home *** CD-ROM | disk | FTP | other *** search
/ Exame Informatica 140 / Exame Informatica 140.iso / Programas / Zsnes / docs / readme.txt / history.txt < prev    next >
Encoding:
Text File  |  2006-12-21  |  156.7 KB  |  3,225 lines

  1. ZSNES v1.50
  2.  
  3. ================================
  4.     N a v i g a t i o n
  5. ================================
  6.  
  7.     * Index    [Index.txt]
  8.  
  9.     * Readme    [Readme.txt]
  10.  
  11.     * GUI    [GUI.txt]
  12.  
  13.     * Netplay    [Netplay.txt]
  14.  
  15.     * Advanced Usage    [Advanced.txt]
  16.  
  17.     * Games    [Games.txt]
  18.  
  19.     * FAQ    [FAQ.txt]
  20.  
  21.     - - - - - - - - - - - - - - - - - -
  22.  
  23.     * Getting Support    [Support.txt]
  24.  
  25.     * History    [History.txt]
  26.  
  27.     * About    [About.txt]
  28.  
  29.     * License    [License.txt]
  30.  
  31.     - - - - - - - - - - - - - - - - - -
  32.  
  33.     * NSRT Guide:    [http://zsnes-docs.sf.net/nsrt]
  34.  
  35.     * ZSNES Home Page:  [ZSNES.com]
  36.  
  37.  
  38. ================================================================================
  39. ~                                H i s t o r y
  40. ================================================================================
  41.  
  42. The following is the history of ZSNES, including the changelog for every
  43. official ZSNES release, and other major events. ZSNES was first released on
  44. October 14, 1997.
  45.  
  46. Spanning the releases between version 0.715 and version 0.990, an ASM-only
  47. version was offered alongside the normal ASM+C version. Differences between
  48. sister C/A releases are marked as appropriate.
  49.  
  50. Note: All changelogs before v1.40 were copied from their original text source
  51. inside the ZSNES official release packages. We edited the old changelogs as
  52. little as possible in order to minimize the accidental loss of information.
  53. Therefore, you may find spelling mistakes and formatting differences between
  54. different versions.
  55.  
  56. 1. v1.50 - December 22, 2006
  57. 2. v1.42 - January 19, 2005
  58. 3. v1.41 - January 18, 2005
  59. 4. v1.40 - December 25, 2004
  60. 5. v1.36 - July 15, 2002
  61. 6. v1.35 - June 23, 2002
  62. 7. v1.337 - September 30, 2001
  63. 8. zsKnight Leaves - July 23, 2001
  64. 9. v1.31b - July 3, 2001
  65. 10. v1.31 - June 27, 2001
  66. 11. v1.30b - June 16, 2001
  67. 12. v1.30 - June 13, 2001
  68. 13. v1.29, Win v1.00 - June 1, 2001
  69. 14. v1.28b, Win v0.99 - May 28, 2001
  70. 15. v1.28, Win v0.99 - Unknown release date
  71. 16. v1.26, Win v0.97 - May 17, 2001
  72. 17. v1.25, Win v0.93 - May 15, 2001
  73. 18. v1.20b, Win v0.88 - April 30, 2001
  74. 19. Source Code Released - April 2, 2001
  75. 20. v1.17b - December 27, 2000
  76. 21. v1.17, Win v0.85 - December 25, 2000
  77. 22. v1.14, Win v0.80 - November 27, 2000
  78. 23. v1.12, Win v0.74 - November 14, 2000
  79. 24. v1.11, Win v0.72 - November 12, 2000
  80. 25. v1.10, Win v0.70 - November 7, 2000
  81. 26. v1.01 - September 9, 2000
  82. 27. v1.000 - September 1, 2000 - First Windows Release
  83. 28. v0.991 - May 24, 2000
  84. 29. v0.990 - May 24, 2000
  85. 30. v0.9891c/a - February 21, 2000
  86. 31. v0.989c/a - February 12, 2000
  87. 32. v0.988c/a - December 6, 1999
  88. 33. v0.987c/a - November 26, 1999
  89. 34. v0.986c/a - November 23, 1999
  90. 35. v0.985c - November 15, 1999
  91. 36. v0.963c/a - September 19, 1999
  92. 37. v0.962c/a - September 18, 1999
  93. 38. v0.960c - September 17, 1999
  94. 39. v0.953c/a - August 4, 1999
  95. 40. v0.952c - August 3, 1999
  96. 41. v0.951c - August 3, 1999
  97. 42. v0.950c - August 2, 1999
  98. 43. v0.941c/a - July 18, 1999
  99. 44. v0.940c/a - July 18, 1999
  100. 45. v0.915c/a - July 7, 1999
  101. 46. v0.910c/a - July 6, 1999
  102. 47. v0.900c/a - July 4, 1999
  103. 48. v0.800a - December 25, 1998
  104. 49. v0.800c - December 24, 1998
  105. 50. v0.715 - October 29, 1998
  106. 51. v0.700 - October 26, 1998
  107. 52. v0.635 - September 24, 1998
  108. 53. v0.625 - September 18, 1998
  109. 54. v0.605 - September 10, 1998
  110. 55. v0.601 - September 9, 1998
  111. 56. v0.600 - September 9, 1998
  112. 57. v0.400 - May 19, 1998
  113. 58. v0.393 - April 15, 1998
  114. 59. v0.391 - April 13, 1998
  115. 60. v0.390 - April 11, 1998
  116. 61. v0.305 - February 12, 1998
  117. 62. v0.300b - February 10, 1998
  118. 63. v0.300 - February 9, 1998
  119. 64. v0.297 - January 31, 1998
  120. 65. v0.296 - Not released?
  121. 66. v0.295 - January 29, 1998
  122. 67. v0.270 - December 25, 1997
  123. 68. v0.201b - November 5, 1997
  124. 69. v0.201 - November 5, 1997
  125. 70. v0.200 - November 4, 1997
  126. 71. v0.182 - October 23, 1997
  127. 72. v0.180 - October 22, 1997
  128. 73. v0.170 - October 16, 1997
  129. 74. v0.150 - October 14, 1997 - Initial Release
  130.  
  131.  
  132.  
  133. ............................................................
  134. v1.50 - December 22, 2006
  135. ............................................................
  136.  
  137. All Ports:
  138. ----------
  139.  
  140. For this release we spent much time rewriting, porting, improving many internal
  141. subsystems. ZSNES is a program with over 200,000 lines of source code and in this
  142. release, over 25% of that has been modified. Also around 15% of assembly has been
  143. ported to C. The upcoming list while large can't fully describe the amount of
  144. work and the amount of improvements made. Make sure to see the readme to find out
  145. how to use all the new features.
  146.  
  147.   Subsystem Additions/Updates/Rewrites/Fixes/Improvements:
  148.   ----------
  149.   - Ryan C. Gordon's ManyMouse support added. [Nach, pagefault]
  150.     This allows the systems compatible with ManyMouse ((Windows XP, Linux via
  151.     evdev if read permission set, Mac OS X) to handle each mouse plugged into
  152.     the system separately. So now games with two mice using devices can be played
  153.     with 2 player (or 1 player controlling both) on a single PC.
  154.     Left Handed Mouse Support. [Nach, Deathlike, Jonas Quinn]
  155.     So lefties can have the buttons for a particular mouse swapped if they so
  156.     desire.
  157.   - Rewrote directory handling system. [Nach, Jonas Quinn, grinvader, Deathlike]
  158.     The old system dubbed "ZFile" only kept track of files in a limited manner
  159.     allowing for many many bugs. The new system dubbed "ZPath" now tracks files
  160.     and paths in a clean systematic manner to eliminate all file/path related
  161.     bugs that have made previous versions annoying. All file handling code is
  162.     now done in C and has many functions to make it easier for anyone else to
  163.     jump right into this bit of development. This also allows for many new
  164.     features to be written, and we wrote quite a few. A debug system has also
  165.     been added making it easy to track file issues regardless of the operation
  166.     system in question.
  167.   - ZMV Rewritten - Movie Support. [Nach, grinvader, ipher]
  168.     Added support for subtitles while playing a ZMV. [Nach]
  169.     Can now load movies via command line parameter. [Nach]
  170.     Added parameter to close ZSNES when movie is closed. [Nach]
  171.     Our movie subsystem - ZMV has been completely rewritten from the ground up.
  172.     Now features such as rerecording (via states and rewind), appending, mouse
  173.     recording, Super Scope recording (buggy), chapters, start types, frame count,
  174.     input compression, among other things is now all supported. Note ZSNES can
  175.     still load old ZMVs, however it should be noted that ZMVs are somewhat version
  176.     reliant and may desync on a version it was not recorded with. Also most of
  177.     the new features will not work when using an old ZMV.
  178.   - Can now dump ZMVs to AVI and WAV. [Nach, Bisqwit]
  179.     For years users have requested being able to convert a ZMV to something
  180.     else, it is now possible.
  181.   - Added IPS multipatch support. Goes from IPS, IP0, IP1, IP2, ..., IP9. [Nach]
  182.     So you can have IPS autopatching apply more than one to a game loaded.
  183.     IPS files now loaded from save directory then ROM directory. [Nach]
  184.     Making it easier for a user to auto patch.
  185.     Fixed silly mistake with size adjustment of IPS patches. [Nach]
  186.     So now the very rare broken IPS should work.
  187.   - Rewind and ZST code fully merged rewind should now work where save states do
  188.     (Fixes rewinding in Super Bomberman games). [grinvader, Nach]
  189.     Can now use 100 save states instead of 10. [Deathlike, Nach, Jonas Quinn]
  190.     SRAM is now stored in save states and can be optionally loaded from them. 
  191.     [grinvader,Nach]
  192.     Can now select how many rewind states you want. [grinvader, Nach, ipher]
  193.     Can now select how much time is in between rewinds. [grinvader, Nach, ipher]
  194.     Our state saving subsystem has been completely rewritten (although another
  195.     rewrite is planned) to fix many bugs that used to be present. With the ZST
  196.     and rewind code merged, it also means no more issues where one works but not
  197.     the other. This is also now all done in C making it easier to deal with, as
  198.     well as allowing many new features as listed above.
  199.   - Parsegen invented (thanks grinvader, gladius). [Nach]
  200.     Binary and text config files merged into one and heavily updated. 
  201.     [Nach, grinvader,Deathlike]
  202.     We invented a new programming language (PSR), and a compiler for it (parsegen),
  203.     which allows one to keep track of variables in a simple manner for both
  204.     developers and end users. Developers can just declare a particular variable
  205.     to be tracked and forget about it, letting the system manage everything else,
  206.     making it easy to add as many configuration options as one likes. For the
  207.     end user, the config file is all in text, making it easy to modify any feature
  208.     they like or features for advanced users not changeable from within the GUI.
  209.     It also provides a level of future compatibility so users should normally
  210.     not have to delete config files between versions. It also allows partial
  211.     config files, so users can delete certain settings and have them restored
  212.     to their defaults. All this is possible while maintaining a high level of
  213.     flexibility.
  214.   - Netplay, Modem, IPX code removed. [grinvader, Nach. ipher]
  215.     As much as we hated to do this, we had to remove all computer to computer
  216.     playing options in order to fix up the other subsystems since the code was
  217.     spread throughout ZSNES. We hope to in future versions to reimplement it
  218.     and also provide new features.
  219.   - Created new macros and greatly eased GUI development and cut down on size of
  220.     GUI code. [ipher]
  221.     Cleaned up GUI and reorganized it.
  222.     [ipher, Nach, grinvader, Deathlike, Jonas Quinn]
  223.     Added tab support to the GUI and made good use of it. [grinvader]
  224.     Rewrote the load game menu, it can now handle thousands upon thousands of
  225.     ROMs at a time. [Nach, grinvader]
  226.     Added a custom font system. [ipher, Deathlike]
  227.     Nach input boxes (video, path) now have a normal blink rate. [Nach]
  228.     Now using our custom GUI should be easier and more straight forward. Almost
  229.     everywhere you look you should see a cleaner design and new features, and
  230.     less bugs. See below for more specifics.
  231.   - New unified ZSNES loader which is also less buggy. 
  232.     [Nach, grinvader, Deathlike, Jonas Quinn]
  233.     Now command line options are handled in a more efficient manner, as well as
  234.     making it much easier for us to add more.
  235.   - Committed the ZSNES development toolkit. [Nach, grinvader]
  236.     Code is now always in executable sections, fixes NX and many other issues. [Nach]
  237.     Added utility to auto detect best -march option to compile with, SDL port
  238.     uses it automatically. [Nach, grinvader]
  239.     For various developers, we now added many utilities to make working on ZSNES
  240.     much easier. Some of these utilities should be built into the assembler but
  241.     aren't. These new utilities have also allowed us to easily track down several
  242.     critical bugs and fix them effortlessly. We also have a utility now to aid
  243.     the person compiling to get the best optimization out of their build perhaps
  244.     now allowing them to use HQ4x or other filters that weren't possible before.
  245.   - Updated build setups. [grinvader, Nach]
  246.     Added file dependency utility. [Nach]
  247.     All the build setups have been updated to make it easier and more flexible
  248.     for one to compile ZSNES and encounter less bugs along the way. File
  249.     dependencies can now also be calculated automatically (most notably for SDL),
  250.     so one updating ZSNES doesn't run into weird issues with only half of a fix
  251.     being compiled.
  252.   - Ported much assembly to C.
  253.     [grinvader, Deathlike, Nach, Jonas Quinn, theoddone33, pagefault, byuu]
  254.     Removed dead code. [grinvader, Nach, pagefault, Jonas Quinn, Deathlike]
  255.     Lastly on our big rewrite, a lot of old junk went, and many complex are
  256.     annoying features are now in C meaning if you know C, now is a good time to
  257.     start helping out ZSNES development.
  258.  
  259.   Special Chips
  260.   ----------
  261.   - Fixed all remaining bugs with the SPC7110. SPL4 and MDH are working correctly, now.
  262.     Special thanks to John Weidman and Dark Force for working on reverse engineering.
  263.     [Jonas Quinn]
  264.   - Super FX updates (Starfox 2 now 99% working). [pagefault]
  265.   - OBC-1 code ported to C and integrated properly, Metal Combat doesn't have graphical
  266.     problems anymore, thanks Nach. [Jonas Quinn]
  267.   - DSP-1 finished. [The Dumper, Andreas Naive, Nach]
  268.   - SA-1 detection updated (Fixed loading of SD F-1 Grand Prix (Sample)). [Nach]
  269.   - Partial Seta 11 emulation (thanks anonymous and Jonas Quinn). [Nach]
  270.   - DSP-3 support (opcodes RE'd by Overload and Feather). Thanks Jonas Quinn for finding
  271.     a bug in my glue code. [Nach]
  272.   - DSP-4 Support (Top Gear 3000). [Nach, pagefault]
  273.   - C4 emulation should be virtually perfect now. [Nach, Jonas Quinn]
  274.   - Now got mapping done correctly for dual Sufami Turbo (thanks byuu), now have two
  275.     sets of SRAM. [Nach, Jonas Quinn]
  276.  
  277.   As for everything else, much was done including a multitude of emulation updates,
  278.   it is even hard to count how many emulation bugs are no longer present.
  279.   Several new features were also added.
  280.   ----------
  281.  
  282.   - Many Mode 7 fixes, also implemented anomie's Matrix formula (Fixed Energy Breakers
  283.     world map, IOG intro, Battlemanicas Battlecoptor intro). [Jonas Quinn]
  284.   - Added some preliminary NMI and IRQ timing, proper behavior of H-IRQ when V-IRQ is
  285.     active, flickering fix in H-IRQ timing. [pagefault]
  286.   - Fixes for DMA, HDMA, so we can have the recent improvements without breaking tons
  287.     of other game. (SSF2, SFA2, FFMQ, TOP, CT, YI, Probably others). [pagefault]
  288.   - Init DMA values to FF, thanks Overload. [pagefault]
  289.   - Fixed windowing issues in Dragon Quest, Star Ocean, Final Fantasy V, Gradius and
  290.     probably other games. [Jonas Quinn, pagefault]
  291.   - Fixed transparency issues in several games including U.N. Squadron, Final Fantasy
  292.     3u/6j and Star Ocean. [Jonas Quinn, pagefault]
  293.   - Fixed SRAM Mapping. Ys III, Dezaemon, Tokimeki Memorial, Dragon Knight 4, Fire
  294.     Emblem - Thracia 776, -should- all work nicely now. [Jonas Quinn, Nach]
  295.   - Fixed a special chip SRAM bug. [Nach]
  296.   - Fast ROM is now actually set. [Nach]
  297.   - Straightened out the 48Mb/64Mb ROM map. [Jonas Quinn, Nach]
  298.   - Fixed Uchuu no Kishi Tekkaman Blade. [Jonas Quinn]
  299.   - Fixed ENVxbehavior. [pagefault]
  300.   - Some fixes regarding WRAM. Some Open Bus. Thanks _Demo_ & byuu. [Nach,
  301.     pagefault]
  302.   - Fixed the source of the Super Turrican crash. It also fixes my current
  303.     Robotrek game. I pray this doesn't break anything else... [Deathlike]
  304.   - Behold true ROM mirroring. If your translation breaks now, fix it. [Nach,
  305.     grinvader]
  306.   - Evened out ROM scoring quite a bit. A bunch of beta ROMs which didn't load
  307.     before now should. Special thanks to Cowering for the Reset Vector Popular
  308.     Opcode Check code. [Nach]
  309.   - Say goodbye to speedhacks. [pagefault]
  310.   - Changed cycles for scanline 0. [pagefault]
  311.   - Removed special timing for EHi roms. [Jonas Quinn]
  312.   - Fixed game title in SPC files for EHi Roms. [Jonas Quinn]
  313.   - Workaround to fix crashing of certain games (Sim City Pal and Super Tetris 2 +
  314.     Bombliss)
  315.     on resolution change. [Jonas Quinn]
  316.   - Silly DSP code removed, should fix a lot of games (including EWJ2) [pagefault].
  317.   - Fixed program counter in RET macro, Dirt Racer now plays with some blinking,
  318.     making progress :) [pagefault]
  319.   - Implemented some RTO (fixes some FF3 issues). [pagefault]
  320.   - Many hacks removed (we now have less than a dozen, and we have the least
  321.     of all the emulators that use hacks). [pagefault, grinvader, Nach, Jonas Quinn]
  322.   - Fixed small screen extra line issues (fixes Super Metroid annoying
  323.     line issue, so now that guy who keeps on coming into the channel
  324.     annoying us about it can rest in peace). [pagefault, Nach]
  325.   - Fixed bug in hires mode (for example Lufia 2 ending). [MaxSt]
  326.   - Fix some randomness in the SPC core for now. [pagefault]
  327.   - Fixed loading of small ROMs. [Nach]
  328.   - Fixed a bug when the background was cleared to a strange color. [pagefault]
  329.   - Updated the bg scroll registers, fixes a couple of games (thanks anomie, byuu).
  330.     [pagefault, grinvader, Jonas Quinn]
  331.   - Memory mapping code is now somewhat sane and can be followed. [grinvader, Nach]
  332.   - Updated timing. [pagefault]
  333.   - Readded corrected noise frequencies. [TRAC]
  334.   - SPC RAM cleared properly on soft reset. [pagefault, Nach]
  335.   - Fixed some init glitches. [Nach]
  336.   - Pass some more tests on the test cart. [pagefault, Jonas Quinn]
  337.   - SPC700 init to ffc0. [byuu]
  338.   - Proper logic when when drawing sprites while subscreen is present, fixes
  339.     SMRPG characters disappearing when entering buildings. [pagefault]
  340.   - Removed the Sound Buffering option because it isn't doing anything.
  341.     [Jonas Quinn]
  342.   - GUI/Exiting SRAM saving only saves if SRAM Check+Save is off or it's on and
  343.     SRAM has been modified recently without save. [Nach]
  344.   - Super Scope buttons are now configurable. [Deathlike]
  345.   - srand() is performed once! and always once per z execution. Water effect B now
  346.     also has a lot more effecting. [Nach]
  347.   - Cleaned up GZip reader. GZip reader now also support transparent reading,
  348.     namely a regular file with a .gz extension for no apparent reason. [Nach]
  349.   - Added "Show Clock Box" and "Show Rom Info On Load" to the Options menu.
  350.     [Deathlike]
  351.   - Fixed some bugs that were discovered with Valgrind. [Nach]
  352.   - Changed the default keys for Player 2 to saner defaults. [Deathlike]
  353.   - Fixed some memory leaks. [Nach]
  354.   - Remove B CPU core. [pagefault]
  355.   - No more TURB! [Nach]
  356.   - FPS now displayed correctly for large numbers. [grinvader]
  357.   - Fixed crash after SuperFX savestates are loaded. [Jonas Quinn]
  358.   - No more alpha for PNGs. [Nach, grinvader]
  359.   - Removing unused and probably out of date SPCDUMP. [Nach]
  360.   - Prevented 'auto state save/load' & 'auto increment state slot' from
  361.     interacting. Former takes precedence. [grinvader]
  362.   - ZSNES will no longer jump back into the GUI randomly if you press F2 / F4 or
  363.     some other buttons repeatedly. Special thanks to Dan for the clues on how to
  364.     recreate it. [Jonas Quinn]
  365.   - Added 12 hour clock toggle. [pagefault]
  366.   - GUI special case horizon fixed, thanks Motley, Dan. [Nach]
  367.   - Crammed a "Documentation" button right below the "WWW.ZSNES.COM" button.
  368.     [ipher, Nach]
  369.   - Fixed crash after enabling Sound Interpolation mid game. Fixed Gaussian
  370.     always selected bug when MMX Support is disabled. Some options that are only
  371.     available with MMX enabled are now
  372.     hidden if MMX is disabled. [Jonas Quinn]
  373.   - Fixed Clear2xSaIBuffer to clear the first line, too. [Jonas Quinn]
  374.   - Removed off by 1 line fix. [Jonas Quinn]
  375.   - Fixed burning effect in executables compiled with GCC. [Jonas Quinn]
  376.   - Removed some DOS only code from other ports and vica versa. [Jonas Quinn]
  377.   - Added "+ Gamma" and "- Gamma" hotkeys to the Misc Keys menu [pagefault,
  378.     ipher]
  379.   - Hacks can now be disabled via command line (-dh). [Jonas Quinn]
  380.   - Get_Date returns correct year now. [Jonas Quinn]
  381.   - SPC filenames are no longer truncated if there is a dot in the filename.
  382.     [Jonas Quinn]
  383.   - Made gui option save config override dontsave option. Fixed bug #13. [Nach]
  384.   - Fixed crash when mmx is disabled and 25% scanlines with interpolation is
  385.     enabled (bug #142). [Jonas Quinn]
  386.   - Fixed corrupted graphics when alt-tabbing. [pagefault]
  387.   - Can now display batter power status on laptops. [Nach, pagefault, ipher,
  388.     David Lee Lambert, drizztbsd]
  389.   - Stupid (and old) mistake successfully corrected after manual tracking,
  390.     fixed bug #52, and probably lots of other sound issues upon state load...
  391.     [grinvader, Jonas Quinn]
  392.   - Added new video modes. [Aerdan]
  393.   - Fixed vars in bss section that had no space reserved. Fixed bug #18 on
  394.      bug tracker.
  395.     [Jonas Quinn]
  396.   - ZSNES now decodes shift-jis headers correctly... but the font is still
  397.     limited to 5x5.
  398.     [grinvader]
  399.   - GCC 4.0 support. [Nach]
  400.   - Fixed a jump to not disable ENV when it shouldn't. [Jonas Quinn]
  401.   - Optimization to frame draw code, only draw frames that change. [pagefault,
  402.     Nach]
  403.   - Added error message if hard patching fails. [Nach]
  404.   - Fixed the exit procedure. [Nach, Jonas Quinn]
  405.   - Updated license. [Nach]
  406.   - Option to allow Up+Down/Left+Right for speedruns' sake. [grinvader]
  407.   - New variable slow down/speed up options. [grinvader. ipher]
  408.   - Lower memory usage. [Nach, Jonas Quinn, Deathlike]
  409.   - Panic key now resets offset mode and windowing state. [pagefault]
  410.   - Primary Buffer option shouldn't be reversed anymore. [Jonas Quinn]
  411.   - Added pause and frame increment options (buggy). [Nach, grinvader, ipher]
  412.   - Key combos for player 5. [ipher]
  413.   - Mode 4 offset change overflow fix in rendering code. [pagefault]
  414.   - Fixed crashes related to wrong MMX detection. [Jonas Quinn, Deathlike,
  415.     hector]
  416.   - Major framerate improvement when using new graphics engine. [pagefault]
  417.   - JMA: Fixed some bugs in decompression. Improved performance. Lower
  418.     memory requirements. Support for JMA v1 files. [Nach]
  419.   - Changed video change accept key to spacebar. [Nach]
  420.   - Added info on load if ROM is patched. [Nach]
  421.   - Fixed 100% CPU usage when no game is running. [pagefault]
  422.   - ZSNESW can now be compiled in MinGW without any fancy NASM patches.
  423.     [TRAC, Nach]
  424.   - Fixed bugs with SRAM Check+Save option. [grinvader, Nach, Jonas Quinn]
  425.   - Initialized many vars which were not. [Nach]
  426.   - Added comments so people have more of a clue. [pagefault, grinvader,
  427.     Nach, ipher]
  428.   - Fixed warnings. [Nach, theoddone33, grinvader, Jonas Quinn]
  429.   - Configure script fix for Gentoo users, and debug builds now use -O0,
  430.     because we can. [grinvader]
  431.   - Partial scons support [theoddone33, Aerdan, Snarius]
  432.   - Added CPU parameter for specific CPU optimizations when compiling for
  433.     an MS platform. [Nach]
  434.   - Added debug build support for MS ports. [Nach]
  435.   - Can now compile without JMA support. [Nach]
  436.   - Greatly updated, overhauled, and unified documentation. [AspiringSquire,
  437.     Deathlike, Nach, Jipcy, Noxious Ninja, Richard C., xamenus, and others]
  438.  
  439. DOS Port:
  440. ----------
  441.  
  442.   - Fixed sample rate to not be able to select 32000 Hz or bigger rates when
  443.     they are not
  444.     available under certain circumstances. [Jonas Quinn]
  445.   - 8 bit modes now save images as BMP. [Nach]
  446.   - Can now compile without a debugger. [Nach, Jonas Quinn]
  447.   - Can choose old or new debugger. [SamB]
  448.   - Fixed ROM loading from the command line for DOS when a VESA2 mode
  449.     is selected. [Jonas Quinn]
  450.   - Now runs proper clean up code on exiting. [Nach]
  451.   - Updates to input code, now supports more parallel pads. [Deathlike]
  452.   - Can now set via command line player 1 and 2 to any input.
  453.   - Rewind can now be used. [Nach]
  454.   - Quick load menu now shows full internal names or if LFN, as much
  455.     as the other ports show. [Nach]
  456.  
  457. Win Port:
  458. ----------
  459.  
  460.   - Fixed a really strange crash problem on Windows 2003 systems.
  461.     [pagefault]
  462.   - You can now use gamepad in the background without ZSNES having focus.
  463.     [pagefault]
  464.   - Fixed bugs so ZSNES can be ran in VMWare. [pagefault]
  465.   - Can pause emulation in the background. [pagefault]
  466.   - Fixed black screen after the computer was locked. [Jonas Quinn]
  467.   - Fixed inline assembler in winlink.cpp when compiled with optimizations.
  468.     [Jonas Quinn]
  469.   - Added custom video modes. [Deathlike2, Nach]
  470.   - Debugger now works in this port. [SamB, pagefault]
  471.   - Added KitchenSyncPal and fixed a lot for KitchenSync issues [Deathlike,
  472.     Poobah]
  473.   - Added ForceRefreshRate as a replacement for Force60Hz. I'm sure someone
  474.     will fail reading the cfg file for help. [Deathlike]
  475.   - Added Keep 4:3 ratio as requested a while back by gltamarin. This is
  476.     useful for laptops/LCDs that use non 4:3 resolutions. [Deathlike]
  477.   - Can now set joystick sensitivity. [Deathlike]
  478.   - Can now view ROMs by SNES internal name. [Nach, Deathlike]
  479.   - Changed default option the Windows port uses due to sanity reasons.
  480.     Also, a check was added to prevent the black screen (and maybe double
  481.     vision) issue. A message box will now pop up to tell you what options
  482.     you have. [Deathlike]
  483.   - Disable Screensaver Option now disables all annoying power management stuff.
  484.     [Deathlike]
  485.   - Changed "High Priority Mode" to "Use A Higher Priority" and Above Normal
  486.     Priority is used on NT. [Deathlike]
  487.   - Nach input boxes (video, path) now allow pasting via ctrl+v. [Nach]
  488.   - Added NTSC filter. [Blargg, pagefault, ipher]
  489.   - Fixed strange sprite priority bugs after switch to window/fullscreen.
  490.     [Jonas Quinn]
  491.  
  492. SDL Port:
  493. ----------
  494.  
  495.   - Fixed bilinear filter in GUI [grinvader]
  496.   - Fixed video change freeze problems in port. [Nach]
  497.   - Make sound processing use less CPU cycles. [Nach]
  498.   - Fixed input responsiveness for controllers 3+. [bssteph]
  499.   - Added freedesktop.org file [pagefault]
  500.   - Fixed screen refresh for SDL software modes when toggling hq2x. [grinvader]
  501.   - Fixed a key repeating bug when changing resolutions. [grinvader]
  502.   - Fixed bug where mouse buttons were conflicting, right mouse click by itself
  503.     on 3+ button mouse. [Nach]
  504.   - Updated wheel handling. [Nach]
  505.   - Added a Variable OGL mode to center ZSNES output with proper
  506.     ratio. [NBondoux]
  507.   - Added custom video modes. [Deathlike2, Nach]
  508.   - New scancode handling system, should fix problems with non US keyboard
  509.     and Mac OS X. Thanks hector.
  510.   - Debugger now works in this port. [SamB]
  511.   - Can now set joystick sensitivity. [Nach]
  512.   - Added Keep 4:3 ratio as requested a while back by gltamarin. This is
  513.     useful for laptops/LCDs that use non 4:3 resolutions. [Deathlike]
  514.   - Can now view ROMs by SNES internal name. [Nach, Deathlike]
  515.   - Hopefully fixed numlock keypad quick select in the F3 menu. [Deathlike]
  516.   - Fixed bug when trackballs are present, also cleaned up joystick
  517.     code a bit. [spoon0042]
  518.   - Make stack non executable for ELF. Thanks drizztbsd. [Nach]
  519.   - Mac OS X support. [Nach, hector, BRPXQZME]
  520.   - Removed dangerous checking of environment variable for user's home
  521.     path. [Nach]
  522.   - Fix compilation on OpenBSD. [pagefault, Nach]
  523.   - Added NTSC filter. [Blargg, pagefault, ipher]
  524.  
  525. ............................................................
  526. v1.42 - January 19, 2005
  527. ............................................................
  528.  
  529. All Ports:
  530. ----------
  531.   - Corrected output of BRR decode for invalid range values (>12). [TRAC]
  532.   - Fixed sustain level 4 (5/8). [TRAC]
  533.   - More window boxes now have borders. [ipher]
  534.   - Close zip files properly when IPS is not found in zip (fixes crashing with
  535.     certain zlibs). [Nach]
  536.   - Cleaned up some code. [Nach, ipher, grinvader]
  537.   - Ported chip detection to C, improved BS detection. [Nach]
  538.   - Ported rewind to C (thanks Nach, TRAC). [grinvader]
  539.   - New reminder text. [grinvader, AspiringSquire]
  540.   - Rollback of "Improved accuracy of base rates used for ADSR, GAIN, noise,
  541.     and echo emulation". [ipher]
  542.  
  543. DOS Port:
  544. ----------
  545.   - Fixed label for Fullscreen/Widescreen options. [ipher]
  546.  
  547. SDL Port:
  548. ----------
  549.   - DESTDIR support. [theoddone33]
  550.  
  551.  
  552. ............................................................
  553. v1.41 - January 18, 2005
  554. ............................................................
  555.  
  556. All Ports:
  557. ----------
  558.   - Improved accuracy of base rates used for ADSR, GAIN, noise, and echo
  559.     emulation. [TRAC]
  560.   - Fixed GUI escape stack corruption if .srm file could not be written to.
  561.     [Nach]
  562.   - Stereo settings now obey config file. [Nach]
  563.   - Fixed framerate loading from config file. [ipher]
  564.   - ZSNES no longer hacks itself in order to access variables; this eliminates
  565.     a few issues we had. [Nach]
  566.   - Source code cleanup. [Nach, ipher]
  567.   - Makefile overhaul; ZSNES can now be cross compiled. [Nach, ipher, malcster,
  568.     SamB]
  569.   - Fixed some invalid memory reads. [Nach]
  570.   - Ported config file creation/loading to C. [MKendora, Nach]
  571.   - Percent of execution now takes h-blank values into consideration.
  572.     [pagefault]
  573.   - Fixed Winter Gold FX crash. [Nach]
  574.   - Filtered GUI is now enabled by default. [Nach]
  575.   - Save location can now be edited in the GUI. [Nach]
  576.   - Added option to enable/disable auto IPS patching. [Nach, ipher]
  577.   - Saving last ROM info to rominfo.txt can now be turned off. [ipher, Nach]
  578.   - Organized options menu, and split off save related options into its own
  579.     menu. [ipher]
  580.   - Moved Super System DIP switches to the chip configuration menu. [ipher]
  581.   - More boxes have borders now! [ipher]
  582.   - New one-time user reminder text. [grinvader]
  583.   - Updated about box. [Nach, ipher]
  584.   - Overhauled toaster support. [Nach]
  585.  
  586. DOS Port:
  587. ----------
  588.   - Fixed a number of keyboard shortcuts in the GUI. [ipher]
  589.  
  590. Win Port:
  591. ----------
  592.   - Get_Date() now returns the proper value (it always returned the proper value
  593.     in DOS). [Nach]
  594.   - Correct timing when compiled with MinGW (Special thanks to Jonas Quinn for
  595.     all his help in getting ZSNESw compiled with MinGW and working). [Nach]
  596.   - More informative error messages when some DirectX component fails to load.
  597.     [Nach]
  598.   - Return 0 instead of random value on exit (keeps certain frontends happy).
  599.     [Nach]
  600.   - Fixed keyboard shortcut for "Trap Mouse Cursor". [ipher]
  601.   - Changed text in netplay window to be more clear about TCP/UDP. [pagefault]
  602.   - Updated ZSNESw compilation instructions in install.txt. [Nach]
  603.  
  604. SDL Port:
  605. ----------
  606.   - Get_Date() now returns the proper value (it always returned the proper value
  607.     in DOS). [Nach]
  608.   - Fixed a memory leak. [Nach]
  609.   - Fixed buffer underflow in sound code when rate was changed several times.
  610.     [Nach]
  611.   - Save files can now be correctly saved in locations other than ~/.zsnes.
  612.     [Nach]
  613.   - Updated video selection menu. (Thanks, Aerdan!) [ipher, Nach]
  614.   - 256x224 R Full for is now actually 256x224, not 320x240. (Thanks, Pieter
  615.     Hulshoff!) [ipher]
  616.   - 640x480 ODS Win is now actually 640x480, not 512x448. [ipher]
  617.   - Added 1280x1024. [ipher]
  618.   - Changed text in netplay window to be more clear about TCP/UDP. [pagefault]
  619.   - Homepage button to open browser now appears in about box. [Nach]
  620.  
  621.  
  622. ............................................................
  623. v1.40 - December 25, 2004
  624. ............................................................
  625.  
  626. All Ports:
  627. ----------
  628.   - Added multiple timing tweaks, fixed various emulation bugs, and many other
  629.     technical updates, including (but not limited to): SPC core updates (with
  630.     improved sound decoding), safer memory allocation in certain areas, HIRQ and
  631.     VIRQ fixes, color add/sub and color bleeding fixes, HDMA improvements,
  632.     sprite priority and flickering fixes, and a slew of SRAM fixes. Many more
  633.     games work :D. [pagefault, _Demo_, Nach, TRAC, Overload, theoddone33]
  634.   - Overhauled a lot of code, such as checksum calculation and mirroring code.
  635.     Overhauled and added much better EHi/Hi/Lo ROM code, improved reset vector,
  636.     and changed much hard coding to variables. Fixed more SRAM bugs than we can
  637.     count. Made optimizations to complex loading functions, syntax, memory init
  638.     (Thanks kode54), execution, and initialization code. Also greatly improved
  639.     PAL/NTSC detection. Also now has much better chip detection and gives more
  640.     informative chip names. More games which never loaded before now load
  641.     properly, such as Dai Kaiju Monogatari 2; it now loads and plays great
  642.     without the Dejap patch. [Nach]
  643.   - Cleaned up, overhauled, removed, and ported a lot of code (asm to C).
  644.     [pagefault, MKendora, Nach]
  645.   - Overhauled IO latch behavior, added proper latching behavior and other latch
  646.     fixes (such as proper latching of bit 7 on $4201), and added proper behavior
  647.     of RDIO regs. [pagefault]
  648.   - Removed many, many hacks. [Nach, pagefault]
  649.   - There have been some modifications and reorganizations of the GUI, including
  650.     new path setup and chip configuration windows and a reorganization of the
  651.     Game Key window. [pagefault, Nach]
  652.   - Updates to the video code, with enhancements of triple buffering, better
  653.     input support in the video dialog, and other general video code updates and
  654.     bug fixes, such as a fix for the 60hz mode. [pagefault, MaxSt]
  655.   - New extra options are now available in various locations, like the "GUI
  656.     burning effect", new commandline options, a new quick key to control players
  657.     1/2 with 3/4, and smaller message text. Some obsolete ones have been
  658.     removed. [pagefault]
  659.   - Some changes in the Input configuaration: Hitting "Set Keys" is now
  660.     prevented if controller is set to "None". Also, if no controller is
  661.     selected, the settings of the individual keys are now locked. [Nach]
  662.   - Updated default configuration, in general. For example, stereo sound is now
  663.     enabled by default at 32khz, with gaussian interpolation. [pagefault]
  664.   - Signed saturation fix for gaussian interpolation (Thanks kode54).
  665.     [pagefault]
  666.   - Fixed several Netplay issues. [_Demo_, pagefault, Nach]
  667.   - Fixed some of our .zmv movie recording problems. [Nach]
  668.   - Fixed a small bug in SPC saving. [pagefault]
  669.   - Fixed issues with config file saving. [pagefault, Nach]
  670.   - Fixed PNG snapshot filenames and PNG height. [StatMat, Nach]
  671.   - Fixed DIP switch 2 on Super System. [pagefault]
  672.   - Fixed an auto frameskip issue (Thanks MKendora). [pagefault]
  673.   - Fixed rewind when using commandline filename. [StatMat]
  674.   - Fixed some issues when loading ROMs via command line. [Nach]
  675.   - Removed ROM info that appears when loading via command line. [Nach]
  676.   - Added a command-line savestate fix. [StatMat]
  677.   - Fixed an annoying savestate bug. [pagefault]
  678.   - Super Bases Loaded 2 works better, due to a fix in DSP-1 mapping. [_Demo_]
  679.   - Horai Gakuen works better, due to a special fix. [_Demo_]
  680.   - Lufia 2 problems are now fixed. [pagefault]
  681.   - Emerald Dragon now works - again. [pagefault]
  682.   - Many updates on the SPC7110, such as normal timing, special ratio removal,
  683.     and better pack loading code. [_Demo_, pagefault, Nach]
  684.   - Removed SPC7110 logger and S-DD1 test. [grinvader]
  685.   - Removed support for interleaved SuperFX ROMs. [Nach]
  686.   - Added several improvements and memory map adjustments for more accurate BS
  687.     emulation. [Nach, pagefault]
  688.   - Added call init code for DSP-2,3, and 4. [pagefault]
  689.   - Added better support for split ROMs with headers and detecting interleaved
  690.     ROMs. [Nach]
  691.   - Added support for many more ROM extensions. [Nach]
  692.   - ROM info now dumped to rominfo.txt on game load. [Nach]
  693.   - Added more information lines on ROM load, such as CRC32, video, and bank
  694.     information. [pagefault, Nach]
  695.   - Added support for some NSRT features, such as NSRT header support and
  696.     support for ROMs using NSRT's JMA compression format. [Nach]
  697.   - Zipped ROMs no longer need a temporary directory. [Nach]
  698.   - Added better handling of bad files. [_Demo_, Nach]
  699.   - Implemented soft IPS patching functionality, with in-zip file support,
  700.     buffering, and RLE support. [Nach]
  701.   - Added a compatibility update to PPU. Passes one more electronics test
  702.     (Thanks MKendora!). [pagefault]
  703.   - Fixed variable types in many locations; ZSNES can now play games without
  704.     hacking the binary to make code segments writable. [Nach]
  705.   - Made ZSNES more HTPC friendly. [pagefault]
  706.   - Fixed many compiler warnings, added compiler optimizations, and more
  707.     compiler fixes and code cleanups. [Nach, MKendora, theoddone33, pagefault,
  708.     ipher, SamB]
  709.   - Unicode support partially supported. Will complete later. [pagefault]
  710.   - ZSNES now displays the day it was compiled in the about box. [Nach]
  711.   - Updated authors.txt, support.txt, thanks.txt, and todo.txt. [pagefault]
  712.  
  713. DOS Port:
  714. ----------
  715.   - Fixed cubic spline interpolation. It should actually save the option now!
  716.     [pagefault]
  717.   - Fixed other various DOS sound bugs. [Nach, pagefault]
  718.   - Fixed a frameskipping bug. [pagefault]
  719.  
  720. Win Port:
  721. ----------
  722.   - Updated icon with Windows XP compliancy. [cdbsi]
  723.   - Added new disable screensaver code. [pagefault]
  724.   - Added a CPU utilization fix. [kode54, pagefault]
  725.   - Added 48khz sound support, updated sound code, and fixed sound bugs.
  726.     [pagefault, Nach, ipher, StatMat]
  727.   - Fixed a couple of input bugs, such as one concerning the 5th joystick and
  728.     another that made the mouse get stuck in an endless loop. [pagefault]
  729.   - Removed alternate timer. [pagefault]
  730.   - Fixed Netplay freezing bug. [pagefault]
  731.   - Many new video features, including (but not limited to): HQ2X, HQ3X, and
  732.     HQ4X graphic filters, support for hi-res and D modes in 32bpp windowed mode
  733.     (now default), new aspect ratio code for scaling, and the KitchenSync
  734.     (usable only via the commandline). [MaxSt, pagefault, Darkfalz]
  735.   - Fixes for video code errors, such as those that occured when alt-tabbing in
  736.     fullscreen, MMX interpolation fixes, and blitter fixes. [pagefault,
  737.     zsKnight]
  738.   - Snapshots are now numbered and use the full ROM file name. [Nach]
  739.   - Renamed Windows version to Win32. [pagefault]
  740.   - Win32 port can now also be compiled with MinGW (but we won't support it till
  741.     the next release). [Nach, Jonas Quinn]
  742.  
  743. SDL Port:
  744. ----------
  745.   - Updated icon. [cdbsi]
  746.   - Updated Linux video code to Windows version. [pagefault]
  747.   - Fixed problems with nVidia cards. [Diablo-D3]
  748.   - Fixed audio problems with broken drivers. [Diablo-D3]
  749.   - Added 48khz sound support. [pagefault]
  750.   - Updated joystick input support. [theoddone33, Sander]
  751.   - Fixed savestate incrementor; this caused some crashes. [pagefault]
  752.   - Cleaned up the Linux Autoconfigure [Diablo-D3]
  753.   - Added a couple of things for the start of BeOS compatibility. [theoddone33]
  754.   - Fixed 16->32bpp LUT related bug. [kode54]
  755.   - Added hardcoded alt-enter fullscreen toggle. [theoddone33]
  756.   - Added dialog for why the video mode couldn't be set. [theoddone33]
  757.   - Added circle buffer patch (savestate fix). [zinx]
  758.   - Fixed problem with man page when installing (when man1 directory doesn't
  759.     exist). [hpsolo]
  760.   - Fixed cmd line sound quality. [pagefault]
  761.   - Fixed zlib and libpng issues. [theoddone33, pagefault]
  762.   - Updated libpng version checking [theoddone33]
  763.   - Added -lm to acinclude.m4 so AC_TRY_RUN doesn't return negative on some
  764.     systems looking for libpng. [theoddone33]
  765.   - Overhauled makefile. [theoddone33]
  766.   - Fixed install target; -D should not be used. [theoddone33]
  767.   - Added the name of the start address to the error message that occurs when
  768.     mprotect fails. [theoddone33]
  769.   - Update config.sub. This allows configuration on 64-bit targets, and requires
  770.     autogen.sh to be rerun. [theoddone33]
  771.   - Added HQ2X filter! [MaxSt, pagefault, zinx]
  772.   - Snapshots are now numbered and use the full ROM file name. [Nach]
  773.   - Renamed Linux version to SDL. [pagefault]
  774.  
  775. We have also greatly improved support for special hardware in ZSNES v1.40.
  776. These require special mention:
  777.  
  778.   * SuperFX core updates:
  779.       - pagefault
  780.   * SA-1 core updates:
  781.       - pagefault
  782.   * C4 core updates:
  783.       - Research: anomie
  784.       - Main Code: Nach
  785.       - Special thanks to The Dumper and TRAC!
  786.   * DSP-1 core updates:
  787.       - Data Retrieval: pagefault, Overload, The Dumper
  788.       - Main Code: pagefault, Overload, The Dumper, neviksti, Andreas Naive,
  789.                    _Demo_
  790.       - Integration: MKendora, Nach
  791.       - Processing Code: pagefault, Nach
  792.   * DSP-2 emulation:
  793.       - Data Retrieval: Overload
  794.       - Research: Overload, neviksti, MKendora, The Dumper, CaitSith2
  795.       - Main Code: kentaro-k.21
  796.       - Processing Code: pagefault, kentaro-k.21
  797.       - Special thanks to Lord Nightmare!
  798.   * S-DD1 emulation:
  799.       - Data Retrieval: The Dumper, Dark Force, zsKnight, Gary Henderson
  800.       - Research: Andreas Naive
  801.       - Main Code: anomie
  802.       - Processing Code: _Demo_, Nach
  803.       - Special thanks to all the other developers and users who worked on this
  804.           hard project!
  805.   * ST010 emulation:
  806.       - Data Retrieval: The Dumper, MKendora
  807.       - Main Code: The Dumper, Overload, Feather, Nach
  808.       - Processing Code: The Dumper
  809.       - Code Fixes: pagefault
  810.   * Sufami Turbo support (preliminary):
  811.       - Nach
  812.   * SD Gundam G-Next and Same Game expansion pack support:
  813.       - Nach
  814.  
  815.  
  816. ............................................................
  817. v1.36 - July 15, 2002
  818. ............................................................
  819.  
  820.   - Fixed Gunforce, added invalid HDMA modes. [_Demo_] (Thanks Overload!)
  821.   - New BRR decoding method, this should resolve all the sound issues introduced
  822.     in 1.35 and fix new ones. (Noise simulation isn't used anymore) [_Demo_]
  823.   - Fixed another bug with command-line netplay. (Windows only) [pagefault]
  824.   - Fixed hang in NBA Live 95 and 96. [_Demo_] (Thanks Overload!)
  825.   - Fixed sound not working on first run. (Windows only) [pagefault]
  826.   - Fixed some more mode 4 issues in the new gfx engine. [pagefault]
  827.   - Added offset mode disable toggle to 8-bit new gfx engine. [pagefault]
  828.   - Fixed SPC hang in 90 Minutes European Prime Goal by clearing spcram.
  829.     [_Demo_]
  830.   - Updated fix for Clayfighter to fix some bugs in battle. [_Demo_]
  831.   - Fixed crash with certain games. (SDL/*nix only) [theoddone33]
  832.   - Added better OBC1 detection. [_Demo_]
  833.   - Special hack for Samurai Showdown IRQ problem. [_Demo_]
  834.   - Special hack for Kamen Rider menu, requires special latch reading. [_Demo_]
  835.   - Special hack for Super Famista 1 & 2 SPC bugs. [_Demo_]
  836.   - Fixed some more bugs in video code. (Thanks Perryman for the video table)
  837.     (Windows only) [pagefault]
  838.   - Fixed Digital Devil Story hang by modifying the spc code.
  839.     You must start a new game for the fix to work. [_Demo_]
  840.   - Modified work ram init value to 0x55. (Thanks TRAC)
  841.  
  842.  
  843. ............................................................
  844. v1.35 - June 23, 2002
  845. ............................................................
  846.  
  847.   - Fixed triple buffering corruption on some VESA 2.x video modes, a very nasty
  848.     bug which accidentally slipped into version 1.337. [stainless] (DOS only)
  849.   - Added full scanlines to 320x256x8b Mode-X.  Uses the same timings
  850.     as the 256x256x8b full scanlines, so it may or may not work
  851.     correctly depending on your video card. [stainless] (DOS only)
  852.   - Linked the EAGLE engine to the filtered GUI option and fixed
  853.     guassian interpolation which has been broken since version 1.71b.
  854.     [stainless, kode54] (DOS only/all ports)
  855.   - Cleaned up the 320x480x8b and 320x240x16b blitters and added
  856.     MMX support to 320x480x8b for a nice speed increase. [stainless] (DOS only)
  857.   - Added 640x400 alternatives to 512x384 video modes for video cards which
  858.     don't have them.  Added a small screen option to the 512x384 and 640x400
  859.     video modes with MMX support.  Also added a "wide screen" option to
  860.     640x400 video modes. [stainless] (DOS only)
  861.   - Added a full screen option to the 320x480 video modes, along
  862.     with a basic interpolation to 320x240x16b and 320x480x16b
  863.     Full screen in 320x480x16b has full/25%/50% scanlines and
  864.     interpolation has full scanlines. [stainless] (DOS only)
  865.   - Added experimental 800x600 video modes.  Fixed 'n' command-line
  866.     option to allow toggling of 25%/50% in addition to full, also
  867.     cleaned up the command-line options message and the config file.
  868.     Noticed some video modes were way off-centered, fixed that
  869.     too, should now be perfect. [stainless] (DOS only)
  870.   - Fixed printing of MMX enabled message on the GUI background if you checked
  871.     MMX SUPPORT under CONFIG -> OPTIONS.  Also, if you check MMX SUPPORT by
  872.     using the keyboard shortcut it will now attempt to actually detect MMX
  873.     before enabling it. :) [stainless, pagefault] (DOS only)
  874.   - Command line support in windows port [StatMat]
  875.   - Fixed problem when some video modes were not being saved. (Windows only)
  876.     [pagefault]
  877.   - Lots of updates to Linux/SDL version, including sound fixes, video code
  878.     updates and other misc bugs. [theoddone33, Thorsten Glaser, Wilbern Cobb]
  879.   - Fixed gamma in PNG snapshots. [pagefault]
  880.   - Added several new goodies to the GUI, which include a force 8-bit sound
  881.     option (fixes a few cards under WinMe), a second water effect, and
  882.     an experimental smoke effect. [stainless] (DOS only/all ports)
  883.   - Fixed problem with sound getting disabled when running command-line
  884.     network games. (Windows only) [pagefault]
  885.   - Updated video code in Windows port to properly display 239 line modes.
  886.     (Windows only) [pagefault]
  887.   - Commented, unified, and cleaned up the Mode-Q and Mode-X blitters.  I did a
  888.     major overhaul to the DOS video code, I cleaned up and reorganized it alot,
  889.     and there seem to be no problems as of yet. [stainless, TRAC] (DOS only)
  890.   - Fixed a bug in sprite priority rotation. (fix damage in FFMQ) [TRAC]
  891.   - Fixed long delay between battles and fixed flickering colours
  892.     on map in Front Mission. [pagefault]
  893.   - Fixed hang when picking up apples in Equinox. [pagefault]
  894.   - Fixed keyon bug in DSP code, fixes sounds in Flaskback 3 Language Edition
  895.     (Thanks neviski) [_Demo_]
  896.   - Fixed "disco colours" in NBA Hangtime when the ball drops. [pagefault]
  897.   - Fixed an NMI issue with register $4212, fixes hang in Cu-On-Pa,
  898.     Bubsy and others. [pagefault]
  899.   - Fixed a mode 4 bug in the new graphics engine that was causing
  900.     the title screen in The Lost Vikings to be scrambled. [pagefault]
  901.   - Added support for Super System arcade system, set DIP switches
  902.     in add-on's menu in GUI.  Games MUST be zipped in order to load. [pagefault]
  903.   - Added special support for Earthworm Jim 2 sound effects. [_Demo_]
  904.   - Added hack for Deaetonosama Apareitiban. [_Demo_]
  905.   - Fixed super scope position reading. [_Demo_]
  906.   - Modified a few timing things. [_Demo_]
  907.   - Fixed some 65816 instructions in processor emulation mode. [_Demo_]
  908.   - Added special timing for Grand Prix 3. [_Demo_]
  909.   - Modified sound decoding another time (helps various noise sounds like DQ6).
  910.     [_Demo_]
  911.   - Modified joypad reading for VS Collection. [_Demo_]
  912.   - Special modification for Bahamut Lagoon and Clay Fighter to delay write
  913.     to the hdma register. (those games need dma delay implemented) [_Demo_]
  914.   - Lots of other minor fixes and things we forgot to mention.
  915.  
  916.  
  917. ............................................................
  918. v1.337 - September 30, 2001
  919. ............................................................
  920.  
  921. This release is dedicated to zsKnight and his family
  922.  
  923.   All ports
  924.   ---------
  925.   - Added a customizable key to toggle display of the game clock [pagefault]
  926.   - Added support for up to 100 SPC file saves per game [pagefault]
  927.   - Added customisable keys to increment and decrement the save state slot
  928.     [pagefault]
  929.   - Added a customisable key to quickly save an SPC file [pagefault]
  930.   - Added force NTSC/PAL and force HiROM/LoROM options to GUI [pagefault]
  931.   - Added a customisable key to toggle the display of the FPS counter
  932.     [pagefault]
  933.   - Added keyboard shortcuts to video options menu [pagefault]
  934.   - Added feature to automatically increment save state slot after each save
  935.     [pagefault]
  936.   - Added new 8-point sound interpolation and two new lowpass filters
  937.     (requires a fast processor, 8pt interpolation and high quality
  938.     lowpass requires an MMX processor) [kode54]
  939.   - Fixed an annoying bug when the menu selection bar would be floating
  940.     in thin air (Thanks to EMu LoRd for pointing this out) [pagefault]
  941.   - Fixed MMX toggle option, now saved when you restart ZSNES [pagefault]
  942.   - Fixed freeze/crash when saving SPC files [pagefault]
  943.   - Fixed filtered GUI option with 2xSaI enabled not refreshing the screen
  944.     [pagefault]
  945.   - Fixed graphics when reseting a game with 2xSaI engine on and the FPS
  946.     counter and/or game clock on [pagefault]
  947.   - Fixed Vortex, Clayfighter 2, Mr. Nutz, Tenchi Wo Kurau Sangokushi
  948.     Gunyuden and others now working again [_Demo_]
  949.   - Fixed Umi Hara Kawa Se and Tin Tin in Tibet [_Demo_]
  950.   - Fixed LoROM/HiROM detection code, Star Trek: Deep Space Nine and
  951.     possibly others now working [pagefault]
  952.   - Fixed Front Mission: Gun Hazard and Pocky and Rocky, now working again
  953.     [_Demo_]
  954.   - Fixed Neugier and Battle Grand Prix freezing after a certain point
  955.     in the game. [_Demo_]
  956.   - Fixed bug in rom header information and checksum status display,
  957.     fixes Tales of Phantasia and others [pagefault]
  958.   - Fixed Marko's Magical Football copy protection [pagefault]
  959.   - Fixed problem with Filtered GUI enabled and parts of game screen
  960.     would show up in GUI menus [pagefault]
  961.   - Fixed frameskip command-line offset [pagefault]
  962.   - Fixed Sim Earth, now loads but map is still not visible [_Demo_]
  963.   - Fixed crash in Home Alone when starting a new game [_Demo_]
  964.   - Fixed sprites in Super James Pond 2 and Kirby Avalanche (Thanks
  965.     Snes9X for the info) [_Demo_]
  966.   - Fixed 256x239 SNES resolution offset in Windows and Linux ports, games that
  967.     use this resolution should now be displayed properly in these ports [_Demo_]
  968.   - Fixed freeze in Accelebrid after a few seconds of gameplay [_Demo_]
  969.   - Fixed cursor getting messed up in Windows and Linux ports when using
  970.     a 16-bit desktop [_Demo_]
  971.   - Fixed bugs when switching between fullscreen and windowed modes with
  972.     fullscreen button in Windows and Linux port [pagefault]
  973.   - Fixed Triple Buffering and vsync options so they can't be enabled at
  974.     the time (Triple buffering includes vsync automatically) [pagefault]
  975.   - Fixed sprite layer disappearing when changing screenshot formats or
  976.     moving the F1 menu [pagefault]
  977.   - Fixed a clipping offset bug in the new gfx engine [pagefault]
  978.   - Fixed BG3 issue with sub-screens in new graphics engine, fixes gfx
  979.     in Bahamut Lagoon's intro and lots of other games [pagefault]
  980.   - Fixed timing problem in Clock Tower that caused it to freeze
  981.     randomly in-game, implemented a hack for now [pagefault]
  982.   - Fixed Cu-On-Pa freezing when starting a new game (Thanks to Lordtech
  983.     for the help) [_Demo_]
  984.   - Optimised global code base, most people should see a performance increase
  985.     [pagefault, stainless]
  986.   - Moved vsync option from game options menu to video options [pagefault]
  987.   - Improved S-DD1 decompressed pack loading and execution, increases
  988.     performance in S-DD1 decompressed pack games [pagefault]
  989.   - Lots of debugger fixes and additions [byuu, bongo]
  990.   - Removed disable screensaver text from DOS and Linux ports [pagefault]
  991.   - Updated water effect code to using lighting effects [stainless, kode54]
  992.   - Improved SPC700 sample processing, fixes sounds in numerous games [_Demo_]
  993.   - Disabled H-DMA for Bahamut Lagoon and Mortal Kombat, fixes some gfx problems
  994.     [pagefault]
  995.   - Changed default keyboard layout for player 2 as some keys were overlapping
  996.     player 1 (Oops!), If you were having problems buying things in FF4 or
  997.     in other games make sure to change your keys for player 2. [pagefault]
  998.   - Cleaned up config file in Windows and Linux ports, removed DOS
  999.     related comments [pagefault]
  1000.   - MMX option now checks for a MMX processor when enabling it in the GUI,
  1001.     also no longer crashes on processors without a cpuid when detecting MMX
  1002.     [pagefault, kode54]
  1003.   - Last netplay IP address used is now saved in Windows and Linux ports
  1004.     [pagefault]
  1005.   - Reorganized sound menu; removed sound interpolation checkbox and made
  1006.     a new list of different types of interpolation: gaussian (original
  1007.     interpolation with enable interpolation option), cubic spline and 8-point
  1008.     interpolation. Also made a new list of lowpass filters. [pagefault]
  1009.   - Removed FPU copy from -? option on command line message, since it is
  1010.     no longer supported. Also cleaned up that message in general [stainless]
  1011.   - FPS at program start option no longer enables FPS display when auto
  1012.     framerate is not enabled [pagefault]
  1013.   - Updated video interpolation code, now looks better than before [kode54]
  1014.   - Lots of misc GUI fixes and cosmetic tweaks [pagefault]
  1015.   - (UPDATE) Added surround sound to Windows and Linux ports, updated filter
  1016.     in DOS port (This was left out of the previous whatsnew file) [kode54]
  1017.  
  1018.   DOS v1.337
  1019.   ----------
  1020.   - Added grayscale mode toggle to GUI [pagefault]
  1021.   - Added support for 5 SNES gamepads on LPT1 [ZDrumm]
  1022.   - Added two new 256 color linear VGA video modes, 256x224 and 256x240
  1023.     [stainless]
  1024.   - Added proper gamma correction, now ranges from 0 (1.0) to 15 (~2.0)
  1025.     in 8bpp modes [stainless]
  1026.   - Fixed Filtered GUI option, now works [pagefault]
  1027.   - Fixed full scanlines disappearing in some modes [pagefault]
  1028.   - Fixed a handful of bugs in the joystick code which may cause the joystick
  1029.     not to work if it has a driver installed under Win9x control panel
  1030.     [stainless]
  1031.   - Fixed date problem in S-RTC games not reporting the proper day of the week
  1032.     [stainless]
  1033.   - Fixed issue with some sound blaster compatible cards not working
  1034.     properly in the DOS port [kode54]
  1035.   - Reordered video modes in alphabetical order [stainless]
  1036.   - Improved SNES pad reading routine, any speed hit now should be
  1037.     minimum when using a snespad adaptor [pagefault]
  1038.   - Improved interpolation performance [stainless]
  1039.   - Default keys for player 1 are now the same as Windows and Linux ports
  1040.     [pagefault]
  1041.   - You can now use / in command line options in addition to the
  1042.     previous - character [stainless]
  1043.  
  1044.   Win v1.06
  1045.   ---------
  1046.   - Added option to toggle the trap mouse cursor feature which prevents
  1047.     the mouse cursor from leaving the window by accident [pagefault]
  1048.   - Added 640x480 DS WIN; 1024x768 DR FULL; 1280x960 S/DS WIN, S FULL;
  1049.     1280x1024 DR/R/DS WIN and FULL resolutions [pagefault]
  1050.   - Added a more meaningful message when changing to a resolution
  1051.     isn't supported [pagefault]
  1052.   - Fixed problem with SRAM not being saved when pressing ALT-F4 in game
  1053.     [pagefault]
  1054.   - Updated icon yet again, looks really nice. [enigMa]
  1055.   - Fixed possible crash when exiting [pagefault]
  1056.   - Fixed bug when scrolling in scrollboxes in the GUI would not trap
  1057.     the mouse cursor inside the scrollbox like the DOS port does [pagefault]
  1058.   - Either alt key can now be used when using the alt-enter combination
  1059.     to switch to fullscreen [pagefault]
  1060.   - Removed triple buffering option from windowed video modes (it does
  1061.     not work in windowed mode) [pagefault]
  1062.   - Optimised some Windows port specific code, should give a small speed
  1063.     boost for most people [pagefault]
  1064.   - Rewrote mouse input code, much more efficient now. [pagefault]
  1065.   - Reordered video modes in alphabetical order; removed 64x52 and 128x112
  1066.     resolutions (Thanks to Terrorcide and McGuiver for helping me test this out)
  1067.     [pagefault]
  1068.   - Improved performance in 32bpp windowed modes [pagefault]
  1069.   - Rewrote some of the audio code to be much more efficient, also added
  1070.     MMX optimisations [pagefault, kode54]
  1071.   - When switching to windowed mode from fullscreen, the window position
  1072.     is now remembered [pagefault]
  1073.   - Removed large sound buffer and exclusive mode option, they shouldn't
  1074.     be needed anymore [pagefault]
  1075.   - Now uses idle task priority when in GUI and window is not active,
  1076.     should also smooth task swtiching on slower computers [pagefault]
  1077.   - (UPDATE) Fixed server IP bug when using zbattle.net or command-line
  1078.     options to connect [pagefault]
  1079.  
  1080.   Linux v0.37
  1081.   -----------
  1082.   - Added autoconf support for easy compiling [Diablo-D3, amit, theoddone33]
  1083.   - Fixed sound buffering in linux port to improve sound on some cards
  1084.     [Diablo-D3]
  1085.   - Implemented S-RTC time functions, FEoEZ and other S-RTC games will
  1086.     now report system time in game [pagefault]
  1087.   - Now supports compiling with gcc 3.0.0 [EvilTypeGuy]
  1088.  
  1089.  
  1090. ............................................................
  1091. zsKnight Leaves - July 23, 2001
  1092. ............................................................
  1093.  
  1094. I'm sorry to say this, but this marks my permanent leave from the ZSNES project,
  1095. anything related to this, and emulation overall. The reason why is that my dad
  1096. just passed away today (he died in his sleep, which is strange since he was
  1097. perfectly healthy yesterday night), so I'm going to have to spend more of my
  1098. energy devoted to helping my family. My dad is also the main person who provides
  1099. the finances to the family (since my mom doesn't work), plus I still have about
  1100. 2 more years to go before I graduate from university, so my immediate future
  1101. doesn't look that great because with my dad gone, that would mean that I need to
  1102. put up more responsibility towards taking care of the family instead of
  1103. studying. But I just hope that everything will go well. Thanks to all you
  1104. supporters for everything. Sorry for the lack of a proper goodbye though, so
  1105. I'll probably update once more after I get out of this shock in another day.
  1106.  
  1107. - zsKnight
  1108.  
  1109.  
  1110. ............................................................
  1111. v1.31b - July 3, 2001
  1112. ............................................................
  1113.  
  1114.   All ports
  1115.   ---------
  1116.   - Fixed Super Punchout, now working [zsKnight, _Demo_]
  1117.   - Fixed SD Gundam GNext again [_Demo_]
  1118.   - Final Fantasy Mystic Quest now works again [zsKnight]
  1119.  
  1120.   Win v1.04
  1121.   ---------
  1122.   - Fixed grayscale toggle [pagefault]
  1123.   - Updated icon again for black backgrounds [enigMa]
  1124.  
  1125.   Linux v0.31
  1126.   -----------
  1127.   - Now compiles and runs on QNX6 systems [TheAlien]
  1128.  
  1129.  
  1130. ............................................................
  1131. v1.31 - June 27, 2001
  1132. ............................................................
  1133.  
  1134.   All ports
  1135.   ---------
  1136.   - Fixed Mode 4 offset bug (Fixes Bust-A-Move, Puzzle Bobble possibly others)
  1137.     [zsKnight]
  1138.   - Emerald Dragon is now working [_Demo_]
  1139.   - Fixed Last Bible 3 DMA problem (Thanks to SNES9x for the info) [_Demo_]
  1140.   - Fixed Super Robot Was Ex (Thanks again to SNES9x for the help on this)
  1141.     [_Demo_]
  1142.   - Moved disable SPC emulation option to sound menu where it should be
  1143.     [pagefault]
  1144.   - Fixed Wizardry 4 and Honkakuha Igo Gosei, interleaved funny [_Demo_]
  1145.   - SD Gundam GNext no longer crashes ZSNES, and actually is playable now.
  1146.     [_Demo_]
  1147.   - Spindizzy worlds should work again [_Demo_, zsKnight]
  1148.   - Dezaemon sprites working now, had to clear OAM address when first
  1149.     address byte is written to [zsKnight]
  1150.   - Power Rangers the Movie working, was reading from register 2144 [_Demo_]
  1151.   - King of Rally now working [_Demo_]
  1152.   - Emerald Dragon working, added a hack to disable ENVx for that game
  1153.     [_Demo_, zsKnight]
  1154.   - Full Throttle Racing working, fixed a bug with the wai 65816 instruction
  1155.     [_Demo_, zsKnight]
  1156.   - Renamed black and white mode to grayscale mode [pagefault]
  1157.   - Got Traverse Starlight and Prairie to go further, but it
  1158.     still freezes after several scenes [zsKnight]
  1159.   - Mario RPG minecart Mode 2 scene working better now [zsKnight]
  1160.  
  1161.   Win v1.03
  1162.   ---------
  1163.   - Added disable screensaver feature to disable screen saver while
  1164.     ZSNES is active [pagefault]
  1165.   - Fixed yet another DirectInput slowdown [pagefault]
  1166.   - Added joystick POV hat support (Thanks to kode54 for testing and
  1167.     fixing my code) [pagefault, kode54]
  1168.   - Added error messages and directions if DirectX 8.0 is not installed [kode54]
  1169.   - Fixed another Windows 2000 freeze on exit bug [pagefault]
  1170.   - Fixed BSOD when loading roms on some systems [pagefault]
  1171.   - Hopefully fixed a crash when multiple roms where in a single zip
  1172.     file (only one rom can be loaded per zip file) [pagefault]
  1173.   - Fixed a possible crash when loading/continuing a game (Thanks to
  1174.     Metus for pointing this out) [pagefault]
  1175.  
  1176.   Linux v0.29
  1177.   -----------
  1178.   - No changes
  1179.  
  1180.  
  1181. ............................................................
  1182. v1.30b - June 16, 2001
  1183. ............................................................
  1184.  
  1185.   All ports
  1186.   ---------
  1187.   - Support for Star Ocean S-DD1 decompressed pack is now enabled. [zsKnight]
  1188.   - Fixed bug in H-DMA code, fixes Hook and Bugs Bunny and maybe others
  1189.     (Thanks to Gary of Snes9X for help on this) [_Demo_]
  1190.   - Updated documentation [Matt Kendora]
  1191.   - Fixed new gfx mode checkbox in options menu [pagefault]
  1192.  
  1193.   Win v1.02
  1194.   ---------
  1195.   - Added 800x600 DR FULL mode (scroll down to the bottom of the mode
  1196.     list to see it)
  1197.   - Fixed timing problem in games when 58 seconds was 1 minute in ZSNES
  1198.     [kode54, pagefault]
  1199.   - Fixed voices in ToP opening and Star Ocean [pagefault]
  1200.   - Fixed another DirectInput slowdown [pagefault]
  1201.   - Fixed joystick 5, it should be working now [pagefault]
  1202.   - Optimised code some more, giving 3-5 FPS boost on most systems [pagefault]
  1203.  
  1204.  
  1205. ............................................................
  1206. v1.30 - June 13, 2001
  1207. ............................................................
  1208.  
  1209.   All ports
  1210.   ---------
  1211.   - Bubsy 2 working again [zsKnight]
  1212.   - Batman: the return of the joker working now [_Demo_]
  1213.   - Sound Novel T-Cool and Derby Stallion 96 memory mapper added [_Demo_]
  1214.   - Fixed BRR block header bug (fixes Raiden Densetsu, Chrono Trigger,
  1215.     Gundam Wing: Endless Duel, and a few other games) [_Demo_]
  1216.   - Updated documentation [Matt Kendora]
  1217.   - New whatsnew.txt format [pagefault]
  1218.  
  1219.   Win v1.01
  1220.   ---------
  1221.   - Updated icon [enigMa]
  1222.   - Added 1280x960 DR, DR FULL modes to Windows port [pagefault]
  1223.   - Fixed random crash when loading roms in Windows port [pagefault]
  1224.   - Rewrote resolution switching code [pagefault]
  1225.   - Window now moves much smoother and faster [pagefault]
  1226.   - Readded large sound buffer option [pagefault]
  1227.   - Fixed CPU usage when window was minimized [pagefault]
  1228.   - Fixed multiple instances when window was minimized [pagefault]
  1229.  
  1230.   Linux v0.29
  1231.   -----------
  1232.   - OpenGL support [hpsolo]
  1233.   - Bilinear option (w/ filtered GUI) [hpsolo]
  1234.   - Fixed video mode descriptions (zsnesl.cfg) [hpsolo]
  1235.   - Resizable windows [amit]
  1236.   - Filter options (scanlines, 2xSaI, etc) for OpenGL modes [zinx]
  1237.   - Many more video modes for OpenGL, including full screen [hpsolo]
  1238.   - Joystick POV hat support [hpsolo]
  1239.   - Added support for 5th Joystick [hpsolo]
  1240.  
  1241.  
  1242. ............................................................
  1243. v1.29, Win v1.00 - June 1, 2001
  1244. ............................................................
  1245.  
  1246.   - Implemented triple buffering in full screen mode (Huge thanks to whatabubba
  1247.     for his help on this and cleaning up the code) [whatabubba, pagefault]
  1248.   - Fixed top 8 lines being invisible of FFMQ [zsKnight]
  1249.   - Optimised DirectDraw code some more giving a 10-15% speed increase
  1250.     [pagefault]
  1251.   - Fixed black screen when switching windows [pagefault]
  1252.   - Improved loading and shutdown time [pagefault]
  1253.   - Rock 'N Roll Racing is working again [zsKnight]
  1254.   - Fixed Lennus 2's sprites [zsKnight]
  1255.   - Almost figured out Wizardry 4's rom format.  It seems like this game
  1256.     was incorrectly dumped so everything in it is out of order. [zsKnight]
  1257.   - Final Fight 2 is working again [zsKnight]
  1258.   - Vsync option now works in triple buffering mode [pagefault]
  1259.   - Now shows minimize window animation when minimizing [pagefault]
  1260.   - Fixed mouse pointer under full screen mode [kode54]
  1261.   - New ZSNES icon in Windows port (Thanks for all your entries) [enigMa]
  1262.  
  1263.  
  1264. ............................................................
  1265. v1.28b, Win v0.99 - May 28, 2001
  1266. ............................................................
  1267.  
  1268.   - Added a filtered GUI option to allow graphics engines such as 2xSaI
  1269.     to be used in the GUI [zsKnight]
  1270.   - Fixed SA-1 save states [zsKnight]
  1271.   - Fixed Breath of Fire crashing bug when loading [theoddone33]
  1272.  
  1273.  
  1274. ............................................................
  1275. v1.28, Win v0.99 - Unknown release date
  1276. ............................................................
  1277.  
  1278.   - Added option to allow multiple instances of ZSNES (off by default)
  1279.     [pagefault]
  1280.   - Fixed Lufia 2 sprite disappearing bug [zsKnight]
  1281.   - Fixed quick menu crash problem when the entries other than the
  1282.     first one is selected when the load menu is opened [zsKnight]
  1283.   - Modified SPC700<->65816 timing again to get Hook working [zsKnight]
  1284.   - Added more keyboard shortcuts to GUI [pagefault]
  1285.   - Fixed vram read to get Smash Tennis working again [zsKnight]
  1286.   - Hopefully fixed lockup when exiting Windows port [pagefault]
  1287.   - Added a spc700 timing hack for Super Final Match Tennis until I
  1288.     re-write the timing engine later (but not anytime soon though) [zsKnight]
  1289.   - Kinda got Rendering Ranger 2 to go further, but this game seems to
  1290.     use some picky timing, so this will have to wait until I re-write
  1291.     timing in the future. [zsKnight]
  1292.   - Removed large sound buffer option since it wasn't really useful [pagefault]
  1293.   - Fixed 16bit access to address $001FFF (or equivalent).  Fixes Super
  1294.     Tetris 2+Bombliss. [zsKnight]
  1295.   - Implemented 128KB sram support.  Dezaemon runs now (but it
  1296.     suffers graphics glitches at the moment) [zsKnight]
  1297.   - Fixed Wordtris (reading from 002100) [zsKnight]
  1298.   - Fixed reset function in William's Arcade Classics [zsKnight]
  1299.   - Tuff-E-Nuff works now (another timing hack *sigh* )
  1300.   - Added exclusive DirectSound mode option [pagefault]
  1301.   - Fixed corrupt graphics in Rock'n Roll racing (reading from invalid memory)
  1302.     [zsKnight]
  1303.   - Added alternate timer for people having problems with zsnes running too fast
  1304.     [bootgod,pagefault,zsKnight]
  1305.   - Fixed corrupt graphics in Captain America (also reading from invalid memory)
  1306.     [zsKnight]
  1307.   - Implemented latest save state selection in Windows port [pagefault]
  1308.   - Added v-sync to Windows port (enable in options to use it, should
  1309.     fix most graphical tearing issues) [pagefault]
  1310.   - Fixed mid-screen OAM updating.  Uniracers works in 2 player mode. [zsKnight]
  1311.   - Combined the new header detection method with the old one, producing a
  1312.     much better method [zsKnight]
  1313.   - Added SA-1 read/write to BWRAM bitmap mode in the lower banks [zsKnight]
  1314.   - Fixed "freeze data" text [hpsolo]
  1315.   - Fixed SA-1 write to BWRAM bitmap mode.  It seems like this was the
  1316.     main cause of the level-up screen not working in Mario RPG. [zsKnight]
  1317.   - Fixed cpu usage when ZSNES is in the background doing nothing [pagefault]
  1318.   - Re-wrote character conversion 1 for 2bpp, implemented cc1 for 4bpp
  1319.     [zsKnight]
  1320.   - Fixed vertical high resolution mode for tile priority 1 [zsKnight]
  1321.   - Fixed Terranigma overworld glitch in the new graphics engine 16bit engine
  1322.     [zsKnight]
  1323.   - Enabled RTC in Windows port [pagefault]
  1324.   - Moved the Transparent Message option from the Options to the GUI Optns
  1325.     section. [pagefault]
  1326.   - Added Trainered rom support [zsKnight]
  1327.   - Fixed BG4 graphics in certain games (fixes Digital Devil Story) [zsKnight]
  1328.  
  1329.  
  1330. ............................................................
  1331. v1.26, Win v0.97 - May 17, 2001
  1332. ............................................................
  1333.  
  1334.   - OBC1 support broke in a recent CVS update.  Fixed now. [zsKnight]
  1335.   - Added full scanlines to the Win/Linux port [zsKnight]
  1336.   - Added Mouse Wheel switch [zsKnight,pagefault]
  1337.   - Fixed problem with interpolation/2xSaI/scanlines being saved
  1338.     in the windows port [zsKnight]
  1339.   - Improved 512 byte header support.  This should improve compatibility
  1340.     with some games [zsKnight]
  1341.   - Added 768x672 and 1024x896 DR, R windowed video modes to Windows port
  1342.     [pagefault]
  1343.   - Windows port now uses the primary DirectSound buffer [pagefault]
  1344.   - Modified 65816<->SPC700 timing.  I hope this doesn't break anything
  1345.     [zsKnight]
  1346.   - Fixed a vram read behavior problem (fixed Equinox dungeons) [zsKnight]
  1347.  
  1348.  
  1349. ............................................................
  1350. v1.25, Win v0.93 - May 15, 2001
  1351. ............................................................
  1352.  
  1353.   - Fixed cheat menu text when game was not loaded [pagefault]
  1354.   - Fixed unlabed checkbox in DOS port [pagefault]
  1355.   - DSP1 - Fixed plane controls in Pilotwings [_Demo_]
  1356.   - dosintrf.asm - Fixed header detection in the dos port [zsKnight]
  1357.   - gui.asm - Video mode checking done at initialization [zsKnight]
  1358.   - Enabled mouse wrap in the Windows and Linux ports [pagefault]
  1359.   - Fixed full screen mode switch when the user starts ZSNESw before
  1360.     selecting any full screen modes [zsKnight]
  1361.   - Made default video mode 512x448 windowed in Windows port [pagefault]
  1362.   - Prevented enter key from affecting gameplay on returning
  1363.     from F1 and F3 menus [zsKnight]
  1364.   - Added minimize button to the Windows port [pagefault]
  1365.   - Added always on top option in GUI options menu [pagefault]
  1366.   - Menu fix for 8bit graphics modes [zsKnight]
  1367.   - ZSNESW now remembers the window position on your desktop (can be
  1368.     disabled in GUI options) [pagefault]
  1369.   - Fixed crashing problem with some IPS's in ZIP's [Teuf, zsKnight]
  1370.   - Ported to DirectX 8.0 which fixed some problems and improved performance
  1371.     (DirectX 8.0 is now required to run ZSNESW) [pagefault]
  1372.   - DSP1 - Fixed map offset problem in Pilotwings [zsKnight]
  1373.   - DSP1 - Fixed rings being mysteriously passed problem in Pilotwings
  1374.     [zsKnight]
  1375.   - Fixed DirectSound crash when a normal priority buffer could not be acquired
  1376.     [pagefault]
  1377.   - Fixed DirectInput compatibility on some computers [pagefault]
  1378.   - Optimized DSP1 code for better performance [teuf]
  1379.   - Added proper full main/sub-screen window clipping in the new gfx 16bit
  1380.     engine (fixed Illusion of Gaia/DKC2 selection screens, etc) [zsKnight]
  1381.   - Added checksum/header name/chip type header display upon game load
  1382.     [zsKnight]
  1383.   - Added PNG snapshot support which is selectable in the F1 menu [Matt Kendora]
  1384.   - Stunt Race FX old graphics engine force fixed [zsKnight]
  1385.   - Fixed MegamanX copy protection schemes [zsKnight, Matthew Kendora]
  1386.   - Fixed TopGear 2 PAL version from detecting a PAL system [zsKnight]
  1387.   - Implemented OBC1 chip (for Metal Combat) [zsKnight]
  1388.   - Fixed Mode 7 bug in Super Ghouls and Ghosts [zsKnight]
  1389.   - Added turbo keys for L & R keys [zsKnight]
  1390.   - OBC1 emulation support.  Metal Combat works! [zsKnight]
  1391.   - You can now customizable the colors to the title bar and window colors.
  1392.     [zsKnight]
  1393.   - Optimised global code to provide up to a 50% speed increase on it on most
  1394.     processors [pagefault]
  1395.   - Added black and white mode to Windows and Linux ports [pagefault]
  1396.   - ZSNESW is now packed with the newest version of UPX [pagefault]
  1397.   - Cleaned up the cfg files for windows/linux ports [pagefault]
  1398.   - Fixed command-line crash in the Windows port (Thanks Matt Kendora)
  1399.     [pagefault]
  1400.   - Save/Load state now displays which state is being loaded [hpsolo]
  1401.   - Added double buffering support to Linux port [teuf]
  1402.  
  1403.  
  1404. ............................................................
  1405. v1.20b, Win v0.88 - April 30, 2001
  1406. ............................................................
  1407.  
  1408.   - Final Fantasy Mystic Quest works again.
  1409.   - Fixed Empire Strikes Back crashing bug in the millenium falcon
  1410.     sequence (hopefully this will fix some other games too)
  1411.   - Removed all self-modifying code in ZSNES.  This will make ZSNES crash
  1412.     a lot less on certain systems, especially during mode 7 sequences.
  1413.     Thanks Ivar!
  1414.   - Implemented S-RTC chip, using the system clock as the actual time
  1415.     (The game will make you set the time though, but it will just be replaced
  1416.     with the system time in-game).  Thanks to John Weidman and Dark Force
  1417.     for the info on this chip!
  1418.   - Fixed crashing bug in certain mosaic scenes (eg. FF3 Phantom Forest)
  1419.     in the new graphics engine
  1420.   - Fixed a nasty crashing/corruption bug in the new graphics engine
  1421.     (both 8bit and 16bit)
  1422.   - SPC7110 emulation!  This is based on the information reverse engineered by
  1423.     the hard working folks at dejap translations, Dark Force and John Weidman.
  1424.   - Altered HiROM/LoROM detection a bit - Fievel goes West works now
  1425.   - Open source preparations [teuf]
  1426.   - In-game clock working for the windows port.  [kode54]
  1427.   - Fixed a memory leak problem in the new graphics engine [TRAC]
  1428.   - Added Cubic Spline Interpolation [Anti Resonance]
  1429.   - Fixed a assign/compare size bug in the new graphics engine [TRAC]
  1430.   - Fixed b flag setting in BRK instruction in 6502 emulation mode [zsKnight]
  1431.   - Added SPC7110 logger file output to help in the filesize clipping of
  1432.     the SPC7110 data files [zsKnight]
  1433.   - Fixed a memory leak bug, fixing that nasty Win2K crash bug [Matthew Kendora]
  1434.   - Fixed key combination release [Maxim]
  1435.   - Fixed source code warnings/added necessary includes [Maxim]
  1436.   - Added high priority mode for Windows 2000 users and slower
  1437.     computers (works on Windows 9x as well) [pagefault]
  1438.   - Added large sound buffer option for people having DirectSound problems.
  1439.     [pagefault]
  1440.   - Fixed problem with ZSNESW and Opera causing a BSOD. [pagefault]
  1441.   - Fixed up error reporting for people experiencing problems. [pagefault]
  1442.   - Improved performance on 3dfx cards by compiling with DirectX 8 SDK.
  1443.     [pagefault]
  1444.   - Fixed a sound problem with people with messed up config files. [pagefault]
  1445.   - Fixed FF3 flashing line problem [zsKnight]
  1446.   - Fixed mysterious sprite disappearing bug in the new graphics engine
  1447.     [zsKnight]
  1448.   - Reduced noise in ToP opening theme.  It works fine in the DOS port,
  1449.     but the windows port still seems to produce some static, probably
  1450.     because of the way how sound is updated in that port. [zsKnight]
  1451.   - Updated Super 2xSaI and Super Eagle code (should be much faster
  1452.     now on MMX processors) [Kreed, added by pagefault]
  1453.   - Added gzip support [teuf]
  1454.   - Added support for ViBRA16 cards [Peter Santing]
  1455.   - No longer requires zlib.dll file, now statically linked. ZSNESw won't crash
  1456.     anymore if you try to load a .zip file without that dll file. [pagefault]
  1457.   - Now compiled using an optimising compiler [pagefault]
  1458.   - Almost a fully re-written DSP-1 emulation engine!
  1459.     [zsKnight, theoddone33, pagefault, teuf].  Also thanks to CrASH_Man
  1460.     for the 3x3 inverse matrix formula.
  1461.   - Fixed memory leak problem in the windows port during exit [pagefault]
  1462.   - And more ...
  1463.  
  1464.  
  1465. ............................................................
  1466. Source Code Released - April 2, 2001
  1467. ............................................................
  1468.  
  1469. The ZSNES Sources have finally been released in the CVS repository of the
  1470. sourceforge page. We also would like to welcome Teuf as a member of the ZSNES
  1471. team as an assistant coder! He's helped us with quite a lot in the past while,
  1472. including (but not limited to) setting up the Source Forge page, helping us to
  1473. write the open source documentation, fixing up the ZSNES sources to not require
  1474. a custom version of nasm, organizing the sources into directories, modifying the
  1475. make file, etc. With the sources released, we also hope to release an updated
  1476. binary soon. Click on the Sourceforge link on the left side of the screen to
  1477. access the sources. The sources will also be available in a ZIP file for those
  1478. who don't want to use CVS.
  1479.  
  1480.  
  1481. ............................................................
  1482. v1.17b - December 27, 2000
  1483. ............................................................
  1484.  
  1485.   * A nasty bug has crept into the DOS version in the 8-bit video modes,
  1486.     so a fixed version (v1.17b) is released (it has the same filename as
  1487.     v1.17 so just overwrite it).
  1488.  
  1489.  
  1490. ............................................................
  1491. v1.17, Win v0.85 - December 25, 2000
  1492. ............................................................
  1493.  
  1494.   - Added slow-down key.  You can configure it in Misc -> Game Keys
  1495.   - Invulnerability bug of the 3rd boss in Demon's Crest in the
  1496.     good checksum roms is fixed through rom mirroring
  1497.     I also noticed that this fix is the same as what the author of SNEeSe
  1498.     told me before about on some MegamanX1 roms, but I never had that rom
  1499.     so I never added this until now.  Guess that rom is also fixed too.
  1500.   - Changed memory initialization values - Lost Viking 2 works again
  1501.   - 65816: Fixed WAI instruction timing with HIRQ's
  1502.     Top Gear 2 - 2 player mode works now
  1503.   - Improved IRQ re-execution timing precision
  1504.   - Starfox 2 beta now runs with sound!
  1505.   - Fixed flickering problem in Starfox 2 beta
  1506.   - Added Mode 2 16x16 tile offset per tile mode
  1507.   - (Win32) Improved the timestamps on UDP headers.  This should (hopefully)
  1508.     solve those out of sync (where both sides see different things) problems
  1509.     with certain connections (ie. T1/LAN connections) in netplay.
  1510.   - (Win32) Added a big notice in netplay.txt.  For all of you who used
  1511.     netplay and had poor experiences with a ping time of less than 300ms,
  1512.     read it!  Also added a more realistic system requirements description
  1513.     for decent netplay in netplay.txt rather than a cpu speed estimate.
  1514.   - Changed reverse stereo method to become invisible to the sound
  1515.     registers in emulation
  1516.  
  1517.  
  1518. ............................................................
  1519. v1.14, Win v0.80 - November 27, 2000
  1520. ............................................................
  1521.  
  1522.   - Fixed configuration files from removing spaces from directory names
  1523.   - (DOS) Fixed 640x480 vesa2 scanline+interpolation display problem
  1524.   - (Win32) Improved Windows speed in 32-bit windowed mode.
  1525.     Should give around an 18% speed increase in FPS.
  1526.   - (Win32) More netplay improvements.  Shouldn't be as jumpy when
  1527.     one side lacks input.
  1528.   - (Win32) Starting netplay will now force the max frameskip to 3
  1529.     if it is less than it and also force on auto frameskip.
  1530.   - (Win32) MMX optimised netplay with back buffer enabled.
  1531.   - (Win32) Fixed load state in netplay to load properly instead
  1532.     of sometimes stalling for no reason
  1533.   - (DOS) Accidently deleted the code to initialize IPX.  Fixed now.
  1534.   - Fixed a configuration loading problem when loading ZSNES from
  1535.     a different directory.
  1536.   - (Win32) Attempted to fix those out of sync problems (although
  1537.     I don't know if it's fixed now since those problems rarely happen to me)
  1538.   - (Win32) Displayed the current filename in the load window
  1539.     for those files with extra long names.
  1540.   - (Win32) Added nickname support to NetPlay.  There's a 9 character
  1541.     nickname size limit.
  1542.   - (Win32) Added actions to chat (similar to how mIRC works - use
  1543.     /me <action> )
  1544.   - (Win32) Nicknames can be changed in the windowed chat by typing
  1545.     /nick <new nickname>
  1546.   - Added a small buffer to the in-game chat to allow up to 5 chat
  1547.     strings displayed at once.
  1548.   - Local chat strings now appear in that buffer
  1549.   - Thickened black borders on the 5x5 font
  1550.   - Extended in-game chat length by around 30 characters
  1551.   - Fixed up Interpolation
  1552.  
  1553.  
  1554. ............................................................
  1555. v1.12, Win v0.74 - November 14, 2000
  1556. ............................................................
  1557.  
  1558.   - (Win32) Hopefully fixed up those green display bugs in
  1559.     scanlines/2xSaI in 1:5:5:5 16bit modes.
  1560.   - (Win32) Improved lost packet recovery time and reduced the number of
  1561.     lost packet stalls in UDP netplay (should produce more fluid netplay)
  1562.   - (Win32) Fixed up crashing bug in Tales of Phantasia with a 512 byte header
  1563.   - Extended filename length of the Quick Menu
  1564.   - (Win32) Hopefully fixed up the mouse wheel support for certain mice
  1565.   - Temp .ZIP directory is now cleared if it exists prior to another
  1566.     .ZIP file being loaded.
  1567.   - (Win32) Improved DirectInput error handling
  1568.  
  1569.  
  1570. ............................................................
  1571. v1.11, Win v0.72 - November 12, 2000
  1572. ............................................................
  1573.  
  1574.   - (Win32) ZSNESw won't crash anymore if you don't have a soundcard
  1575.     or if DirectSound fails to initialize.
  1576.   - (Win32) Fixed a nasty performance bug with certain types of
  1577.     joystick/drivers installed, causing the FPS to be slower for no reason.
  1578.   - (Win32) Wrote an MMX optimised blitter for 16bit non-D windowed
  1579.     and full screen modes.
  1580.   - (Win32) Added simple wheel mouse support.
  1581.  
  1582.  
  1583. ............................................................
  1584. v1.10, Win v0.70 - November 7, 2000
  1585. ............................................................
  1586.  
  1587.   - Fixed games that turns on the x239 resolution (eg. Chrono Trigger
  1588.     battles) when scanline mode is enabled
  1589.   - (Win32) Fixed up crashing bugs on extra long filenames with underscores
  1590.   - (Win32) Hopefully fixed the odd colored interpolation in 1:5:5:5 16bit
  1591.     color settings
  1592.   - (Win32) Hopefully won't crash anymore when the temporary directory
  1593.     exists prior to unzipping a .zip file
  1594.   - (Win32) Fixed loading of .zip files with more than 2 '.'s in the
  1595.     filename.  Thanks to DCX for helping us troubleshoot this.
  1596.   - (Win32) Fixed up short filename saveram/save states loading when
  1597.     the long filename has spaces in it.
  1598.   - Added TCP/IP Support.  It is recommended that for playable netplay,
  1599.     you'd have an average ping time of less than 300ms (type
  1600.     ping <ip address> in dos) and that packet loss is minimal for TCP/IP
  1601.     (not UDP).  At the moment, you cannot have more than 2 connections
  1602.     Thanks for all the testers for testing this, especially DooMStalK,
  1603.     GreenImp, and TeleKawaru!  Also added back buffer support.  This
  1604.     will sacrifice cpu power for netplay to make it much more playable.
  1605.     WARNING: High cpu speed recommendations (~450mhz+).
  1606.              Please see netplay.txt for details.
  1607.   - Added save states to netplay (just use them like you normally do)
  1608.   - Save Ram is now defaulted to load/save on the server's side
  1609.     Save Ram are not supported in SA-1/SuperFX games due to their size,
  1610.     but you can use save states instead in that case.
  1611.   - Increased chat line length in the out-of-game chatbox by a lot
  1612.   - Partly increased the chat line length in-game
  1613.   - in-game chat text now stays longer on-screen by 2 seconds
  1614.   - Added reset in netplay
  1615.   - Fixed up movie recording feature
  1616.   - (Win32) Mouse shouldn't get stuck on the left side anymore.
  1617.   - (Win32) Video mode 3 (256x224FS) shouldn't crash anymore.  Thanks
  1618.     to kode54 for his assistance on the above 2 bugfixes.
  1619.   - (Win32) Fixed the instability bug where the window can sometimes
  1620.     start shaking for no reason and takes away windows resources.
  1621.   - (Win32) Re-wrote keyboard character input routines
  1622.   - Fixed up FF2(4)'s music in lower sampling rates
  1623.   - (Win32) Coded in the UDP protocol as a replacement for TCP/IP.
  1624.     Some network configurations won't work with UDP.  However, it is strongly
  1625.     recommended that you use UDP if you can because of the speed increase.
  1626.     In order to disable UDP and use TCP/IP, both sides must de-select UDP.
  1627.   - (Win32) Added a small multiplayer game list (multi.txt)
  1628.   - Added an updated Windows FAQ, courtesy of TuxedoMsk of VGNetwork
  1629.     who updated it.
  1630.   - Added a more user friendly input selection routine (changed Direct Input
  1631.     to Keyb/Joystick and it also auto-sets keyb/Joystick when you set a key)
  1632.   - Hopefully fixed up the sprite priority problems (eg. FF2/4's damage points)
  1633.   - (Win32) Added rewind support for up to 8 levels (in 8 second intervals)
  1634.     (NOTE: Windows Port only! - Sorry DOS Port users).  In order to activate
  1635.     this, assign a key to the Rewind Key in the Misc -> GameKeys option.
  1636.   Note: Netplay plays really nice as long as the net connection is not
  1637.         unstable, both sides have a fast cpu  (speed requirements depend
  1638.         on the game), and at least have a 28.8 connection.
  1639.   *** PLEASE READ ZSNESW.TXT IF YOU ARE STILL HAVING PROBLEMS WITH
  1640.       THE WINDOWS PORT
  1641.  
  1642.  
  1643. ............................................................
  1644. v1.01 - September 9, 2000
  1645. ............................................................
  1646.  
  1647.   - Fixed a problem with offset per tile mode with MMX2 in the new 16bit engine
  1648.   - Fixed crashing problem in MMX2 (Win port)
  1649.   - Removed clock option (Win port)
  1650.   - Disabling the new graphics 16bit engine is now properly saved
  1651.     in the configuration files
  1652.   - Added the win port version number to the about box (Win port)
  1653.   - Fixed the % of execution problem in IPX/Modem modes
  1654.  
  1655.  
  1656. ............................................................
  1657. v1.000 - September 1, 2000 - First Windows Release
  1658. ............................................................
  1659.  
  1660.   - Implemented C4 emulation :
  1661.       - C4 Sprite structure -> OAM conversion routines
  1662.       - Sprite Rotate/Scale ability
  1663.       - Sprite disintegrate function
  1664.       - All in-game used math co-processor functions (hopefully)
  1665.       - Both wireframe modes
  1666.       - There are still some problems with C4 emulation, but I'd
  1667.         consider them to be quite minor to just leave them there.
  1668.       Thanks to StarCreator for recording a bunch of movies off
  1669.         of the real snes for me to compare!
  1670.   - Tweaked ADSR a bit
  1671.   - Decreased envelope when key on is issued while sound is still playing.
  1672.     This fixed static/popping sound bugs that affected many games.
  1673.   - Added the ability to select the Add-on device (Snes Mouse/Super Scope)
  1674.     from the GUI through the Add-on option in the Config Menu
  1675.   - Added a hack to allow the mouse to control the cursor in Lethal Enforcers
  1676.     (Press '7' 4 times to activate or select it from the Add-on option in the
  1677.     Config Menu).  Unfortunately, this method has problems (ie. mouse moves
  1678.     things that it shouldn't) but it should be good enough, especially for
  1679.     those who asked for this.  I doubt this works in LE2, however.
  1680.   - Added a manual load entry box so that you can type in the
  1681.     filenames/directories manually or type in part of the filename and the GUI
  1682.     will seek to whichever filename contains or closely contains that part
  1683.   - Pharos coded a water effect, getting help from Scott Scriven's
  1684.     water effect code.
  1685.   - You can enable/disable the Water Effect and Snow Effect from the
  1686.     GUI Options (MISC Menu in the GUI)
  1687.   - Implemented Sprite Windowing to the new gfx 8bit engine.  This
  1688.     completes all the features that I have planned for that engine.
  1689.   - Fixed a really nasty stereo bug that caused volume levels/pans
  1690.     to sound completely off on one of the speakers
  1691.   - Added player 5 as a normal player instead of just being available
  1692.     in modem/ipx play
  1693.   - Implemented an option to turn in-game messages/fps display to be transparent
  1694.   - Added a Set Keys feature to the Input Routines in the GUI that
  1695.     allows you to set all of the standard SNES keys all at once
  1696.     instead of clicking on the inputs separately to set them
  1697.   - Ported the new graphics 8bit engine to 16bit:
  1698.       - All the standard snes features from the 8bit engine
  1699.       - Works with all 16bit resolution modes/effects
  1700.       - Ported high resolution Mode 7
  1701.       - Added proper main/sub screen support and windowing support
  1702.       - Added all transparencies modes
  1703.       - Added Direct Color Mode7
  1704.       - 2xSaI and 50/75% scanlines can now co-exist with high resolution modes
  1705.       - This is now the default engine for 16bit.  Some games won't
  1706.         work well with this engine such as some SuperFX games (eg. Stunt
  1707.         Race FX in the menus).  You can switch back to the old graphics
  1708.         engine by pressing the '8' key.
  1709.       - Implemented a dual cache system in the tile modes.  I don't know
  1710.         how much of a speed increase this gives since my system can already
  1711.         run the old graphics engine at full speed and framerate.
  1712.       - Full 15bit transparencies for MMX cpus only.
  1713.   - High Resolution Mode7 can be toggled on/off in the Video Options.
  1714.     It is disabled by default since this feature requires a fast CPU.
  1715.   - Added 48khz sound sampling rate
  1716.   - Tweaked VBlank timing  a bit
  1717.   - Tweaked 65816 CPU cycle execution a bit
  1718.   - Added Kreed's Super 2xSaI engine.  It's written in C,
  1719.     so it requires a really fast cpu to run it.
  1720.   - Added picture preview to the save states in the F3 window.
  1721.     Newly created save states will contain a small picture in them.
  1722.     Pictures will not appear in old save states, however.
  1723.  
  1724.  
  1725. ............................................................
  1726. v0.991 - May 24, 2000
  1727. ............................................................
  1728.  
  1729.   - Disabled 2xSaI/Super Eagle when in the GUI
  1730.   - Fixed up cheat code search (Got broken in v0.990 during port preparation)
  1731.  
  1732.  
  1733. ............................................................
  1734. v0.990 - May 24, 2000
  1735. ............................................................
  1736.  
  1737.   - Added speed hack for Kirby Super Star (US)
  1738.   - SPC700 (Sound cpu emulation) is now enabled by default whether
  1739.     sound is enabled or not.  Emulation will now be slower than normal
  1740.     if you usually run with sound off, but the compatibility is higher.
  1741.     However, you can disable this through the options window in the GUI
  1742.     if speed is of your concern.  Also, a few games only run with it
  1743.     disabled so this option may be useful in those cases.
  1744.   - Decreased cheat code description length by 1 since the last
  1745.     letter was causing some corruption to the next cheat code
  1746.   - Added an option to raise the pitch level to the pre-v0.989
  1747.     pitch levels, mainly for non-Creative brand sound cards.
  1748.   - You can now change the sound settings (Enable Sound, Stereo,
  1749.     Sound Frequency) with immediate effects without re-starting ZSNES.
  1750.     However, there seems to be some problems with stereo switching
  1751.     on SB Live!'s.
  1752.   - Configuration is now saved whenever you exit the GUI instead
  1753.     of just exiting the program
  1754.   - Lots of port preparation done on the source.
  1755.   + Memory/Commandline fix on the C version.  A version should
  1756.     not be needed anymore (hopefully)
  1757.   - The GUI is now using the standard in-game video blitter rather than it own.
  1758.   - Fixed up SnapShot key in 8bit mode
  1759.   - Implemented 4-point gaussian interpolation.  This is the interpolation used
  1760.     by the actual snes!  Many thanks goes to Neill Corlett for his work on
  1761.     finding this info! Of course, this routine takes up an extra cpu load so
  1762.     emulation will slow down a bit if your computer isn't fast enough, but
  1763.     you can always disable interpolation through the sound options.
  1764.   - Fixed up Pitch Modulation method.  Thanks again, Neill!
  1765.   - Pitch modulation was modulating from the wrong channel.  Fixed.
  1766.   - Tweaked SuperFX timing.
  1767.   - Added a move window feature to the F1 menu
  1768.   - Expanded filename length in the GUI display for long filenames
  1769.     by 3, but had to decrease the directory name by 2.
  1770.   - Added support for % codes in long filenames
  1771.  
  1772.  
  1773. ............................................................
  1774. v0.9891c/a - February 21, 2000
  1775. ............................................................
  1776.  
  1777.   - Slightly changed SB16 initialization
  1778.   - Forgot to remove DSP1 debug code
  1779.   - Fixed a pitch modulation bug when Voice 0 modulates Voice 1.
  1780.     Thanks to kode54 for this fix!
  1781.  
  1782.  
  1783. ............................................................
  1784. v0.989c/a - February 12, 2000
  1785. ............................................................
  1786.  
  1787.   - Fixed some SA-1 sudden slowdowns.  This does slow down the overall
  1788.     emulation speed in SA-1 games though.
  1789.   - All sounds were being played at the wrong pitch (slightly higher
  1790.     than normal.  It's now fixed so Zsnes should sound better now.
  1791.     Thanks to kode54 for helping out here!
  1792.  
  1793.  
  1794. ............................................................
  1795. v0.988c/a - December 6, 1999
  1796. ............................................................
  1797.  
  1798.   - Added some SA-1 speed hacks (Kirby DX/Parodius 3)
  1799.   - Implemented SDD-1 MMC.  But none of the SDD-1 games run properly yet
  1800.     because of the compression chip.
  1801.   - Fixed up some slowdown problems in SA-1 games
  1802.   - Fixed up dirty CPUID fix for Cyrix CPUs so that you don't have to
  1803.     re-run Zsnes twice every time.
  1804.  
  1805.  
  1806. ............................................................
  1807. v0.987c/a - November 26, 1999
  1808. ............................................................
  1809.  
  1810.   - Forgot to re-enable pitch modulation after disabling it for debugging
  1811.     purposes.
  1812.  
  1813.  
  1814. ............................................................
  1815. v0.986c/a - November 23, 1999
  1816. ............................................................
  1817.  
  1818.   - Re-added Sound Buffering.  I was hoping to re-write it, but
  1819.     later found out that it wasn't worth the trouble.
  1820.   - Fixed some Triple Buffering bugs, but I can't figure out that
  1821.     flicker glitch on NVidia cards
  1822.   - Added Simulated Triple Buffering for cards without VESA 3.0 Hardware
  1823.     triple buffering.  This method does some lose frames, but should be
  1824.     faster than v-sync.  This only works on VESA 2.0 modes.
  1825.   - Fixed up directory sorting to always put ./.. at the top.
  1826.  
  1827.  
  1828. ............................................................
  1829. v0.985c - November 15, 1999
  1830. ............................................................
  1831.  
  1832.   - Added some more speedups to the SA-1
  1833.   - SA-1: Fixed a branch problem with the BRL instruction
  1834.   - Implemented Save Ram support into netplay.
  1835.     Thanks to The Minder for help testing this!
  1836.   - Added a hack to get Mario Paint trainered rom with the trainer
  1837.     removed to work with the snes mouse instead of the keyboard/joystick
  1838.   - Prevented Joystick Keys/Buttons to be selected as the diagonal
  1839.     keys in the GUI
  1840.   - Fixed some crashing problems with the Modem Mode
  1841.   - Implemented a key combination editor in the GUI
  1842.   - Sped up V-Sync
  1843.   - Fixed an SA-1 memory map bug!  Fixes DBZ:HD.
  1844.   - Added an small speed hack for DBZ:HD
  1845.   - Implemented SA-1 Super MMC
  1846.   - Finally, after many, many hours of hacking.  Figured out
  1847.     what caused the odd noise sounds!  So far, simulated noise
  1848.     is implemented since the true nature of how this noise
  1849.     is produced is unknown so it will sound somewhat off compared
  1850.     to the original sounds.  There is also a slight chance that
  1851.     some sounds will become noise incorrectly and vice versa.
  1852.   - Fixed up Pitch Modulation
  1853.   - Fixed SNES Mouse/Super Scope support when Pl3/4 as Pl1/2 option is enabled
  1854.   - ADSR/GAIN overhaul (Sound DSP) :
  1855.       - Fixed several GAIN bugs
  1856.       - Implemented Increase Bentline/Decrease Exp GAIN modes properly
  1857.       - Rewrote Decay/Sustain modes in ADSR
  1858.       - Fixed a restarting ADSR bug
  1859.   - Removed Sound Buffering.  I don't think it's worth losing the
  1860.     quality of the sound for a small amount of speed boost.
  1861.   - Implemented an option to disable the Noise Simulation for those
  1862.     games that aren't working properly because of it
  1863.   - Implemented Triple Buffering.  You can enable this through the
  1864.     Video Options in the GUI.  Unfortunately, Triple Buffering
  1865.     won't work with 2xSaI/Super Eagle engine at the moment since they
  1866.     rely on the previous screen for updating nor will it work
  1867.     properly with high resolution games in the old gfx engine.
  1868.     Thanks to GreenImp for patiently helping through testing!
  1869.   - Implemented Full Screen Interpolation.  Only works on
  1870.     MMX CPU's at the moment.
  1871.   - Implemented Cheat Code Reflector (See Guinotes.txt for details)
  1872.   - Any proper VESA 2 error messages now doesn't exit the program
  1873.     when in the GUI but instead display the error message in a
  1874.     box and allows the user to continue.
  1875.   Thanks to Daniel for lending me his copier which helped me hack the
  1876.     SNES Sound Noise/ADSR stuff!
  1877.  
  1878.  
  1879. ............................................................
  1880. v0.963c/a - September 19, 1999
  1881. ............................................................
  1882.  
  1883.     NOTE : You cannot run DSP1 games, use IPX support, or use .ZIP files in the
  1884.           assembly only version.  Use v0.963c for those features.  The only time
  1885.           when you should use this version is if v0.963c doesn't work for you.
  1886.   - Fixed DMA position reader to fix the high sample rate problem
  1887.     in SB-Live! cards.  Thanks to ShihTzu for helping us with this!
  1888.   - Removed SB16 only message under stereo option in commandline help.
  1889.     Shouldn't really be there since v0.600.
  1890.   - Low Pass Filter is now disabled by default.  But you can still
  1891.     enable it through the GUI.
  1892.   - Implemented an option in the GUI to not allow Zsnes to change
  1893.     the current start-up game path in the configuration.  You can
  1894.     access this in Config->Options.
  1895.   - Joystick calibration values have been reset since there seems
  1896.     to be some problems with it.  You may have to re-calibrate your
  1897.     joystick if it doesn't respond correctly.
  1898.  
  1899.  
  1900. ............................................................
  1901. v0.962c/a - September 18, 1999
  1902. ............................................................
  1903.  
  1904.   - Exit text now only displays when text mode is 80x25
  1905.   - Used hardware DMA counter to determine which sound block to write to rather
  1906.     than assuming it always starts at the first one for the sound routines.
  1907.     This should hopefully fix all those nasty sound static problems many people
  1908.     seems to have.  Many thanks to Crono for the code and for his help!
  1909.   - Removed Re-Init Every 30 Second option.  Shouldn't be needed anymore
  1910.   - Added the ability to disable the Low Pass Filter
  1911.   - Implemented Diagonal Keys
  1912.   - Implemented some SA-1 speedups
  1913.  
  1914. A Only:
  1915.     NOTE : You cannot run DSP1 games, use IPX support, or use .ZIP files in the
  1916.           assembly only version.  Use v0.962c for those features.  The only time
  1917.           when you should use this version is if v0.962c doesn't work for you.
  1918.   - All changes from v0.960c
  1919.  
  1920.  
  1921. ............................................................
  1922. v0.960c - September 17, 1999
  1923. ............................................................
  1924.  
  1925.   - Modified header reader a bit
  1926.   - DSP/SPC700: Modified EndX register usage to fix some compatibility
  1927.   - DSP/SPC700: Fixed up timing registers
  1928.   - DSP/SPC700: Fixed a sample looping bug causing many sounds to not
  1929.     sound correctly
  1930.   - SPC700: Fixed a small bug in TCALL.  Not sure if it fixes anything
  1931.   - Added small optimisations to the MMX video copy routines
  1932.   - Fixed an adsr -> gain switching bug
  1933.   - Extended maximum number of cheat codes from 75 to 255
  1934.   - Altered .spc format again, this time to suit the ID666 format
  1935.   - Worked a bit on SDD-1 emulation.  Don't think we can go any further since
  1936.     we can't seem to figure out the compression algorithm used in that chip.
  1937.   - DSP/SPC700: Added low-pass filter by kode54.  Thanks kode54 for the code!
  1938.     This enhances bass in some games.
  1939.   - SA-1: Fixed memory map access problems with several stack
  1940.     instructions and d-page instructions
  1941.   - SA-1: Minor fix to the timing
  1942.   - SA-1: Fixed a load state problem which causes Zsnes to crash sometimes
  1943.   - SA-1: Fixed a small problem with the cpu communication register
  1944.   - SA-1: Added a small speed hack for Kirby 3
  1945.   - Added some transparency hacks (Kirby3, FF3)
  1946.   - Added an sram fix hack for Donkey Kong Country 2 trainer version
  1947.   - GUI now displays a message when SAVE CFG is selected
  1948.   - Added on-screen messages to the Background/Sound channel toggle keys
  1949.   - Added the missing video mode descriptions in the .cfg and commandline help
  1950.  
  1951.  
  1952. ............................................................
  1953. v0.953c/a - August 4, 1999
  1954. ............................................................
  1955.  
  1956.   - Echo should sound better now
  1957.   - Restored the old Sound Blaster routines since the new ones seems
  1958.     to create some static in certain computer configurations
  1959.   - Increased volume intensity of more quiet samples
  1960.  
  1961. C Only:
  1962.   - Fixed up crashing bug in pure dos when vesa 2 initialization failed
  1963.   - Included cwsdpmi.exe with the zsnes archive.
  1964.  
  1965. A Only:
  1966.     NOTE : You cannot run DSP1 games, use IPX support, or use .ZIP files
  1967.            in the assembly only version
  1968.   - Fixed a small H+V IRQ timing problem
  1969.   - Fixed some vertical off by 1 line bugs
  1970.   - Attempting to save over read-only files shouldn't mess up anymore
  1971.   - Start with newest save option now works with the save directory defined
  1972.   - Fixed up a crashing bug when a read only file is loaded
  1973.   - The volume level didn't modify the echo volume.  Now fixed.
  1974.   - Fixed up a display problem in the F1 menu in 256 color mode
  1975.   - Fixed an echo delay bug
  1976.   - Hopefully fixed the random beep encounter bug that
  1977.     occurs in some games with sound enabled
  1978.   - Several sound volume fixes
  1979.   - Fixed Save Snapshot + Increment frame enter key affecting the game bug
  1980.   - Added Increment Frame Only option to the F1 menu
  1981.   - Made some minor changes to the Sound Blaster routines
  1982.   - Fixed some more sync bugs in .ZMV recording
  1983.   - Fixed a speed hack bug that occurred from v0.800 to v0.900.
  1984.     Hopefully the speed is better now.
  1985.   - Slightly improved the sound skipper when sound is disabled
  1986.   - You can now quickly modify the currently selected cheat code's
  1987.     value by typing a 2 digit hex number in the cheat code enter space
  1988.   - Added a hack to Chrono Trigger to prevent the screen from flashing
  1989.     before battles
  1990.   - Fixed a 16-bit mode 7 windowing distortion/crashing bug
  1991.   - Fixed a read memory leak bug in the 16-bit old gfx engine.
  1992.     Interesting that this bug plagued ZSNES all this time, but its
  1993.     effects didn't show until the recent versions.
  1994.  
  1995.  
  1996. ............................................................
  1997. v0.952c - August 3, 1999
  1998. ............................................................
  1999.  
  2000.   - Fixed a small H+V IRQ timing problem
  2001.   - Fixed the bug which caused HiROM games from not loading properly
  2002.     through the commandline
  2003.   - Fixed some vertical off by 1 line bugs
  2004.   - Attempting to save over read-only files shouldn't mess up anymore
  2005.  
  2006.  
  2007. ............................................................
  2008. v0.951c - August 3, 1999
  2009. ............................................................
  2010.  
  2011.   - Fixed up the directory changing bugs that plagued v0.950
  2012.   - Start with newest save option now works with the save directory defined
  2013.   - Fixed up a crashing bug when a read only file is loaded
  2014.   - The volume level didn't modify the echo volume.  Now fixed.
  2015.  
  2016.  
  2017. ............................................................
  2018. v0.950c - August 2, 1999
  2019. ............................................................
  2020.  
  2021.   - Fixed up a pretty nasty .ZIP support bug where .ZIP files from
  2022.     the root directory weren't loaded up properly
  2023.   - Fixed up a display problem in the F1 menu in 256 color mode
  2024.   - Fixed an echo delay bug
  2025.   - Hopefully fixed the random beep encounter bug that
  2026.     occurs in some games with sound enabled
  2027.   - Several sound volume fixes
  2028.   - Sorry about those new problems in v0.941c.  We traced some of the
  2029.     problems to the dos extender zsnes was using (thanks Maxim- for
  2030.     some help on this!) so we spent some time rewritng the file system
  2031.     so that it would be compatible with other extenders in pure dos.
  2032.   - Fixed Save Snapshot + Increment frame enter key affecting the game bug
  2033.   - Added Increment Frame Only option to the F1 menu
  2034.   - Made some minor changes to the Sound Blaster routines
  2035.   - Fixed some more sync bugs in .ZMV recording
  2036.   - Fixed a speed hack bug that occurred from v0.800 to v0.900.
  2037.     Hopefully the speed is better now.
  2038.   - Slightly improved the sound skipper when sound is disabled
  2039.   - You can now quickly modify the currently selected cheat code's
  2040.     value by typing a 2 digit hex number in the cheat code enter space
  2041.   - Added a hack to Chrono Trigger to prevent the screen from flashing
  2042.     before battles
  2043.   - Fixed a 16-bit mode 7 windowing distortion/crashing bug
  2044.   - Fixed a read memory leak bug in the 16-bit old gfx engine.
  2045.     Interesting that this bug plagued ZSNES all this time, but its
  2046.     effects didn't show until the recent versions.
  2047.  
  2048.  
  2049. ............................................................
  2050. v0.941c/a - July 18, 1999
  2051. ............................................................
  2052.  
  2053.   - Fixed a small newly created timing bug
  2054.   - Fixed flicker bug in 320x480x65536 video mode during high
  2055.     snes resolution mode
  2056.  
  2057.  
  2058. ............................................................
  2059. v0.940c/a - July 18, 1999
  2060. ............................................................
  2061.  
  2062.   - Fixed a major SuperFX bug!  Starfox and other SuperFX games
  2063.     now show polygons!  Note that the SuperFX still has bugs.
  2064.   - Fixed an offset per tile mode bug
  2065.   - Optimised SuperFX plot instruction.
  2066.   - Implemented a hack to get Winter Gold working.
  2067.     Thanks to Gary Henderson for this fix!
  2068.   - Fixed a flag setting bug in the XCE instruction (65816).
  2069.   - Fixed another HIRQ bug
  2070.   - Seems like a sprite cache bug that was fixed in v0.800 re-appeared
  2071.     in v0.900.  Fixed now.
  2072.   - Fixed an SA-1 arithmetic calculation result timing bug
  2073.   - Forced the old gfx engine on when running Stunt Race FX since
  2074.     the new gfx engine was having lots of problems in 256 color mode
  2075.   - Fixed a new gfx 8bit engine mosaic crashing bug with certain games
  2076.   - Fixed a sprite cache bug in the new gfx engine
  2077.   - Fixed a DSP envelope bug which was causing some games to not work
  2078.   - WRAM data is now cleared by 0xFF
  2079.   - Fixed 320x480x16bit mode when switching from a 256 color mode
  2080.  
  2081.  
  2082. ............................................................
  2083. v0.915c/a - July 7, 1999
  2084. ............................................................
  2085.  
  2086.     NOTE : You cannot run DSP1 games, use IPX support, or use .ZIP files
  2087.            in the assembly only version
  2088.   - Skipped scanline length check/set in VESA 1.2 routines
  2089.   - Fixed a 256 color mode 7 slowdown bug that occurred in v0.910c
  2090.   - Added hi-res mode 7 hack to 320x480x256 video mode
  2091.   - Implemented 2xSaI engine for ARGB cards.  Thanks to Kreed for
  2092.     the updated source!
  2093.   - 2xSaI was missing a couple lines at the bottom.  Now fixed
  2094.   + A:  320x480 modes can now be selected in the GUI
  2095.   - properly cleared 320x480x256 video mode
  2096.   - F3 menu should now be correct during hi-res mode 7
  2097.  
  2098.  
  2099. ............................................................
  2100. v0.910c/a - July 6, 1999
  2101. ............................................................
  2102.  
  2103.     NOTE : You cannot run DSP1 games, use IPX support, or use .ZIP files
  2104.            in the assembly only version
  2105.   - The bug where enabling auto-cheat load, having an Sram directory,
  2106.     and loading a rom without a .cht file which results in Zsnes changing
  2107.     the loading directory to the sram directory is fixed.
  2108.   + A:  Fixed cheat search engine
  2109.   - Tweaked HIRQ timing to fix some flickering in some games
  2110.   - Fixed screen shot capture in ARGB cards in 640x480x65536 mode
  2111.     with scanlines enabled
  2112.   - Implemented adjustable time interval for the sound reinitialization
  2113.     feature so that it can be set to values other than 30 seconds.  It
  2114.     can be modified in zsnes.cfg (ReInitTime)
  2115.   - Cheat Search 'Add' button now works properly
  2116.   - Corrected Register 4212h to adjust to the new NMI timing
  2117.   - Implemented ARGB video mode support to VESA 1.2
  2118.   - Implemented 320x480x256 and 320x480x65536 video modes
  2119.   - Fixed a x448 resolution bug when scanlines are enabled
  2120.   - Prevented those with ARGB videocards from checking 2xSaI or
  2121.     Super Eagle engine for now
  2122.  
  2123.  
  2124. ............................................................
  2125. v0.900c/a - July 4, 1999
  2126. ............................................................
  2127.  
  2128.     NOTE : You cannot run DSP1 games, use IPX support, or use .ZIP files
  2129.            in the assembly only version
  2130.   - Fixed another sprite priority bug
  2131.   + A:  Fixed an IRQ problem that was caused during the C -> ASM conversion
  2132.   - HBlank is supposed to be noticed during VBlank
  2133.   - Fixed an IRQ bug that occured between v0.715 and v0.800
  2134.   - Fixed a 65816 DPage usage bug that occured between v0.715 and v0.800
  2135.   - Rewrote 65816 flag handling system.
  2136.   - Optimised SA-1 emulation
  2137.   - Optimised the 65816 main loop.
  2138.   - Implemented Surround Sound.  It is defaulted off since it seems
  2139.     to create some bad static in some games.  Thanks to Crono for info!
  2140.   - Wrote Interpolation in MMX.  MMX cpu is required.
  2141.   - Implemented MMX auto-detection for MMX Interpolation and MMX Copy.
  2142.   - Fixed an 224HDMA line bug, thanks to Gary Henderson!
  2143.   - Optimised 320x240x16b and 640x480x16b for ARGB cards.
  2144.   - Removed Snow
  2145.   - Clock option is now visible to anyone.  You can enable the in-game clock
  2146.     through the GUI in Config->Options.
  2147.   - Altered method of writing to file in Movie Recording mode, hoping that
  2148.     it will fix some problems after recording movies for a long period of time.
  2149.   - Altered data alignment size in source
  2150.   - Fixed a VESA2 divide by 0 bug in Banshee cards by checking
  2151.     the scanline length instead of setting it immediately.
  2152.     Thanks to Crono for some help!
  2153.   - Altered sound echo volume
  2154.   - Added sound interpolation based on Crono's code.
  2155.     Thanks to Crono for his help!
  2156.   - Added an option to turn off sound interpolation for speed
  2157.   - Implemented Pitch Modulation, thanks goes to Gary Henderson for
  2158.     clarification info!
  2159.   - Implemented an option in the GUI (Config->Options) to allow the
  2160.     Fast Forward key to act as a toggle (disabled by default)
  2161.   - Fixed a bug that prevented high resolution to sometimes not display
  2162.     in a 16bit video mode
  2163.   - Fixed a game stalling bug when pressing F3 during games that are
  2164.     sensitive to changes in the ENVX DSP register (Bomberman Series)
  2165.   - Added a hack for the graphic glitches in Dragon Quest 6
  2166.   - Fixed up in-game clock in the new gfx 16bit engine
  2167.   - Fixed a nasty bug in the ADSR engine.  It was sometimes using
  2168.     an incorrect decay value, causing the sound to stick instead of fading out
  2169.   - Slightly fixed ADSR by completely skipping the attack stage when
  2170.     the attack duration is 0
  2171.   - Fixed a GAIN decrease->increase bug
  2172.   - Implemented a safe recovery feature for those computers that
  2173.     don't support the CPUID instruction (used for MMX detection).
  2174.     If ZSNES crashes at the very start, just re-run it.
  2175.   - Fixed a fixed color dual windowing bug in the subscreen which caused
  2176.     transparency to sometimes shift unexpectedly when the background scrolls
  2177.   - Implemented 50% Scanlines (Lance McKay's idea) and 25% Scanlines (Similar
  2178.     to Snes9x TV-Mode's scanline intensity) in 640x480x65536 video mode.
  2179.     These modes don't work on videocards with an ARGB setting yet.
  2180.   - Added MMX Support to 50% and 25% Scanlines modes
  2181.   - Implemented back buffer clear in MMX
  2182.   - .CHT files now saves to the proper save directory
  2183.   - Implemented the 2xSaI graphics engine (MMX Only).  Many thanks
  2184.     to Kreed for this wonderful engine and source code!
  2185.   - Implemented Kreed's Super Eagle engine.  Note that for both
  2186.     2xSaI and Super Eagle, you need an MMX processor, enough RAM for
  2187.     the new gfx 16bit engine, and also be in 640x480x65536 video mode.
  2188.   - Implemented an option to auto-load a .cht file whenever a game is loaded.
  2189.     You can find this option at the bottom of the Cheat Window in the GUI.
  2190.   - Optimised Non-MMX Interpolation
  2191.   - Fixed a bug that caused save states to not save correctly after
  2192.     attempting to load a non-existing .cht file
  2193.   - Added a Quick SnapShot Key.  You can set this key in the
  2194.     Misc -> GameKeys menu in the GUI.  This key allows you to take
  2195.     a snapshot with just a press of a key.
  2196.   + C:  Implemented .ZIP support.  Thanks to Jean-loup Gailly, Mark Adler,
  2197.     and Gilles Vollant for the ZIP routines!
  2198.   - Fixed a bug where pressing PageUp/PageDown in the cheat window
  2199.     went over by 3 entries.
  2200.   - Implemented longer cheat descriptions.  The cheat window and the
  2201.     .cht file format had to change a bit, however, ZSNES automatically
  2202.     converts any old formats to the new formats when it detects it.
  2203.   - Allowed the IRQ to be executed more than once on the same line
  2204.     through HIRQ.  Fixes the flickering problems of Doom/Offroad Baja.
  2205.   - NMI now executes at line 225 instead of 224.
  2206.   - Saving/Loading the state causing the control to stop or skip has
  2207.     been fixed again.
  2208.   + C:  .ZIP files can now be run from the commandline
  2209.   - Implemented an option for ZSNES to automatically save the save data
  2210.     approx. 5 seconds after it detects writes to it.  This will not
  2211.     work for SuperFX or SA-1 special chip games, however.  This option
  2212.     is disabled by default and can be enabled through the option window.
  2213.   - Implemented an option in the sound window to re-initialize the sound
  2214.     card after every 25-30 seconds.  Hopefully fixes the problems where
  2215.     the sound gets staticy after a certain amount of time.
  2216.   - Newest Save Slot will now appear as orange in the Save State
  2217.     Select (F3) window
  2218.   - Fixed a spc700 <-> 65816 sync bug during movie (.ZMV) playback
  2219.   - Implemented an option to enable Old Gfx Engine Mode 2 (Accessible
  2220.     through the options window in the GUI).  This mode fixes many
  2221.     transparency problems in 16bit modes, but can also create some
  2222.     and is also at times slower than the original engine.
  2223.   - Implemented 640x480x65536 VESA 1.2 support.  Currently supports
  2224.     Full Scanlines and Smallscreen modes.  However, it is strongly
  2225.     recommended that you only use VESA 1.2 support if your card cannot
  2226.     support VESA 2.0 (w/ linear framebuffer) since VESA 1.2 runs slower.
  2227.   - Implemented an option to disable Pitch Modulation
  2228.   - Sound card is now not re-initialized whenever a state is saved/loaded
  2229.     since some sound cards seems to have problems with it.
  2230.   - Implemented Single Windowing in the New Gfx 8bit engine, 8x8
  2231.     and 16x16 tile modes only
  2232.   - Fixed 64k SRAM support when loaded from the GUI
  2233.   - Optimised high resolution new gfx modes in 640x480x256
  2234.   - Fixed the graphic glitches in x488 snes vertical resolution modes
  2235.     in 640x480x256 new gfx mode
  2236.   - Optimised 640x480x256 Eagle Engine
  2237.   - Fixed the GUI background display bug in the new gfx engine
  2238.   - Fixed .SPC capture in the new gfx engine
  2239.   - Added an option to start with the newest save state when the game
  2240.     is loaded.  It can be enabled in Config->Options window in the GUI
  2241.   - Slightly optimised new gfx 8bit engine
  2242.   - Fixed several Mode 7 problems in the New Gfx 8bit engine
  2243.   - Changed DSP1 variables to use double instead of floats for a small
  2244.     speed increase.  Thanks to Gary Henderson for this tip!
  2245.   - Fixed up the Mode 7 slowdown bug when the scale ratio becomes small
  2246.     in most graphics modes
  2247.   - Optimised some Mode 7 transparency modes
  2248.   - Implemented EXTBG mode 7 into the newgfx 8bit engine
  2249.   - Fixed the 'FIX' feature in the cheat menu.  Seems like it wasn't
  2250.     writing any value to memory when it was clicked.
  2251.   - Game Genie codes are now defaulted to the 'FIX'ed mode.  Seems like
  2252.     most of the codes needs this.
  2253.   - Implemented windowing to Mode 7, New Gfx Engine 8bit
  2254.   - Added support for .SPC v0.2 format
  2255.   - Added an option in zsnes.cfg to disable configuration saving for
  2256.     those who want to store zsnes.exe in a read-only storage area
  2257.   - Fixed GameKeys display in the GUI for certain keys (such as the
  2258.     snes parallel adapter keys)
  2259.   - Implemented hi-res mode 7 (vertical expand only).  Currently only
  2260.     works in 640x480x256 newgfx engine (w/ Eagle and Scanlines disabled).
  2261.   - Fixed an offset per tile mode bug in the new gfx 8bit engine
  2262.   - Implemented dual windowing modes into the new gfx 8bit engine
  2263.   - New Gfx 8bit engine is now the default graphics engine in 256 color modes.
  2264.     It still lacks sprite windowing and also has some sprite flicker issues,
  2265.     but it's overall more stable, faster, and has more features.
  2266.     You can still switch back to the old gfx engine by pressing '8'.
  2267.   - Looks like Pitch Modulation was causing more sound problems than
  2268.     what it's worth.  It's now disabled by default, but you can reenable
  2269.     it through the GUI.
  2270.   - Added auto save/load state feature where ZSNES will automatically
  2271.     loads back the previous state when you last properly exited ZSNES.
  2272.     This feature is disabled by default.
  2273.   - Compressed the executable using UPX
  2274.  
  2275.  
  2276. ............................................................
  2277. v0.800a - December 25, 1998
  2278. ............................................................
  2279.  
  2280.   - Assembly only version.
  2281.   - Doesn't support DSP1 chip or IPX.
  2282.   - May fix problems that some people are having with sound.
  2283.  
  2284.   NOTE : Only use this if have problems with 0.800c.
  2285.  
  2286.  
  2287. ............................................................
  2288. v0.800c - December 24, 1998
  2289. ............................................................
  2290.  
  2291.   - Fixed up sound speeds.  Timers were computed incorrectly.
  2292.   - Fixed a sprite priority bug
  2293.   - Fixed up a bug that prevented the gui to be disabled
  2294.   - Fixed up SPC capture
  2295.   - Fixed a bug when VIRQ is set on the same scanline as NMI
  2296.   - Implemented an automatic .IPS patcher.  Just rename your .IPS
  2297.     file to the rom filename with the .IPS extension and ZSNES will
  2298.     patch the rom realtime without modifying the rom file's contents.
  2299.     Thanks to Neill Corlett for most of the .IPS info!
  2300.   - Snapshot capture/skip 2 frames option now returns back to
  2301.     the proper menu item
  2302.   - Fixed a calibration bug with 6/8button joysticks
  2303.   - Fixed up display in 640x480x8 new gfx engine
  2304.   - Fixed up hi resolution displays in all 640x480x8b modes
  2305.   - Fixed up a bug where Mode 7 becomes corrupt after selecting
  2306.     Save CFG from the GUI
  2307.   - Fixed a memory map bug in lorom DSP1 games
  2308.   - Fixed a potential DSP1 crashing bug where a negative value is
  2309.     being square rooted
  2310.   - Hopefully fixed the modem bug when using an IRQ that is bigger than 7
  2311.   - Fixed up an ADSR bug for games that changes ADSR mid-sample
  2312.   - Fixed up echo emulation (possibly slowed down emulation)
  2313.   - Fixed up a sprite caching bug
  2314.   - Fixed up a DSP1 byte check stall bug
  2315.   - Implemented a commandline to disable spc700 speed hacks (-7)
  2316.     Might help with some compatibility
  2317.   - Implemented SA-1 support (most functions emulated)!  Unfortunately,
  2318.     it's still buggy.  Thanks to the snes9x team for providing info!
  2319.   - Fixed a bug when selecting drive A/B while a disk is not
  2320.     in the drive caused a long check sequence
  2321.   - Implemented Keyboard support to most of Option, Sound, and GUI Option
  2322.     configurations in the GUI
  2323.   - Changed sound init code a bit.  Hopefully improves sound card
  2324.     compatibility, but might also ruin it.
  2325.   - Implemented off by 1 line fix (-9).  This may help compatibility and
  2326.     fix some minor graphic glitches, but may also ruin some too.
  2327.  
  2328.  
  2329. ............................................................
  2330. v0.715 - October 29, 1998
  2331. ............................................................
  2332.  
  2333.   - Fixed a crashing bug when 16bit back window clipping was using
  2334.     an undefined windowing clip buffer
  2335.   - Added spc program counter check to the spc stall detection to
  2336.     reduce false alarms
  2337.   - Tweaked IRQ processing a bit
  2338.   - ZSNES.CFG and ZGUICFG.DAT are now fixed so that they will use
  2339.     the current directory when the SET CMDLINE detection fails
  2340.   - Fixed several mode 7 bugs in the new graphic engines
  2341.   - Implemented an option to save the configuration files in the MISC menu
  2342.   - Added a shadow to the in-game text displays
  2343.   - Fixed a bug created in v0.700 where pressing F3 while sound
  2344.     is disabled crashes zsnes
  2345.   - Fixed up player 4 and player 5 so they now work again
  2346.   - Fixed up color a bit in the old graphics 16bit engine
  2347.   - Added gamma control to 16bit old graphics engine
  2348.   - Fixed a cheat code bug where pressing the down key in the browser
  2349.     overflows by 3 rows
  2350.   - Fixed up a bug where any memory allocation below 48mbit support crashes
  2351.   - Added out of memory error when loading a file from the gui
  2352.   - Fixed a minor off by 1 pixel windowing bug
  2353.   + Fixed up memory requirements in the readme.txt.  It seems like
  2354.     compiling with C takes up 3.0 more megs.  It shouldn't though.
  2355.     An asm only version will be release later without dsp1/ipx support
  2356.     unless the reason is figured out.
  2357.   NOTE : It seems like IPX mode randomly loses packets in certain
  2358.          configurations so IPX isn't recommended to use yet.
  2359.  
  2360.  
  2361. ............................................................
  2362. v0.700 - October 26, 1998
  2363. ............................................................
  2364.  
  2365.   - Fixed another offset per tile mode bug
  2366.   - Fixed up joystick button update rate
  2367.   - Fixed a bug that caused sound buffer dump option to crash
  2368.   - Fixed a minor sound initialization bug
  2369.   - ZSNES now compiles with C code!
  2370.   - Fully rewritten commandline parser routines
  2371.   - Partially rewritten SET BLASTER/SET CMDLINE detection
  2372.   - Implemented partial DSP1 support.  Seems to have some precision problems.
  2373.     Thanks to the snes9x team for the info!
  2374.   - Fixed a mode 7 nonrepeat mode off by 1 tile bug
  2375.   - Implemented snapshot/increment by 2 frame feature in the F1 menu
  2376.     for those interested in producing animations
  2377.   - Added variable sound buffer size to reduce static in higher sampling rates
  2378.   - Changed method of reading the mouse cursor position in the GUI.
  2379.     Hopefully, this fixes those mouse crash problems when zsnes is
  2380.     run in pure dos and sometimes win95.
  2381.   - Added a commandline to disable palette 0 (back color) modification
  2382.     in 256 color modes
  2383.   - Implemented Turbo Buttons for buttons A,B,X, and Y.  Use the GUI to
  2384.     define those keys
  2385.   - Added the ability to toggle Turbo Change speed to 30hz instead of 60hz
  2386.     in the Options menu
  2387.   - Started C4 chip emulation.  Nothing is playable yet.
  2388.   - Fixed up SET CMDLINE detection.  Hopefully, zsnes.cfg and
  2389.     zguicfg.dat will now end up in the correct directory.
  2390.   - Started Modem Support (direct modem to modem).
  2391.     DOS-Compatible modem required!  Thanks to Dark Force for helping
  2392.     out on getting a bug that kept USR's and other modems from working!
  2393.     Also thanks to The Minder for a lot of help testing!
  2394.     Note : Modem mode isn't free of bugs
  2395.   - Added in-game chat key to the GUI keys for modem/net support.
  2396.     Currently defaulted to 't'
  2397.   - Forgot to add EMMS after any MMX routines that seems to cause
  2398.     any FPU instructions to crash
  2399.   - Fixed an interrupt re-enable bug in the Gamepad Pro code which
  2400.     seems to have eliminated the locking bugs when it's not set on GrIP mode
  2401.   - Implemented keys to adjust Frame Rate up or down during gameplay.
  2402.     You can define them through the GUI under Gamekeys
  2403.   - Implemented keys to slide the volume level up or down during gameplay
  2404.   - Fixed a small HDMA screw up bug when using Save/Load states
  2405.     which caused the screen to flicker once in many games
  2406.   - Finally fix up 48mbit mapper support!  Many thanks to Dark Force,
  2407.     Mike Gilroy, and Frank Hughes for a lot of help on this!
  2408.   - Several fixes to register 4211h
  2409.   - Rewrote IRQ timing handler (not perfect, but better)
  2410.   - Implemented Fossil Driver support to the modem support.
  2411.   - Fixed an IRQ reenable bug
  2412.   - Increased default cycles a bit
  2413.   - Fixed some major mode 7 rotation bugs
  2414.   - Added support for uninterleaved 48mbit roms
  2415.   - Added a FIX option to the cheat code to correct incorrectly converted codes
  2416.   - Implemented Mode 7 horizontal flip
  2417.   - Implemented primitive IPX support.  It is very primitive at
  2418.     the moment and may not work since it isn't really tested much.
  2419.   - Optimised some 65816 direct page addressing modes
  2420.   NOTE : .ZMV (Movie) files recorded under v0.635 has good potential
  2421.        on becoming obsolete in this version because of the timing changes
  2422.   NOTE : IPX support and Modem support may be buggy since it hasn't
  2423.        been tested on multiple types of connections yet.
  2424.  
  2425.  
  2426. ............................................................
  2427. v0.635 - September 24, 1998
  2428. ............................................................
  2429.  
  2430.   - Sidewinder fix options are now swapped since the majority seems
  2431.     to work better with the other sidewinder routine.
  2432.   - Implemented EXTBG mode7 in 256 color old graphics engine.
  2433.   - Fixed a DSP Sound bug where some sound effects weren't played
  2434.     in certain games
  2435.   - Tweaked joystick routines again
  2436.   - Fixed up a bug where sometimes loading a game after playing
  2437.     another game screws up emulation
  2438.   - Optimised 640x480x8, 512x384x8, and 512x384x16 video modes
  2439.   - Implemented EXTBG mode7 in 65536 color old graphics engine.
  2440.   - Fixed an offset per tile mode range clipping bug
  2441.   - Fixed up offset per tile mode in new gfx 8bit engine
  2442.   - Fixed a bug which caused a crash when a state is loaded while
  2443.     playing/recording a movie file
  2444.   - Optimised new gfx 16bit non-transparency mode
  2445.   - Implemented SPC700 stall detection/recovery attempt
  2446.   - Fixed up a new header detection bug in v0.625
  2447.   - Modified memory allocation routines.  Hope this fixes those
  2448.     random crash problems that some people seem to have
  2449.   - Fixed a sound bug where the song leaks after it ends,
  2450.     sometimes producing an unwanted beep
  2451.   - Optimised new gfx 16bit transparency modes
  2452.   - Multiple DSP sound bug fixes
  2453.   - Implemented transparencies in high res 16x8 tiles
  2454.   - Implemented a command line to disable the sound DSP (-dd).  Use
  2455.     -s and -dd if you want spc700 emulation to be enabled without sound
  2456.     to improve compatibility
  2457.   - Fixed a bug where joystick support makes the emulation slow
  2458.   - Had to remove some memory allocated variables and convert them to arrays
  2459.     since they were causing random crashes on specific computers.
  2460.   - Fixed up pressing save state/load state in game so that it doesn't
  2461.     clear any key presses
  2462.  
  2463.  
  2464. ............................................................
  2465. v0.625 - September 18, 1998
  2466. ............................................................
  2467.  
  2468.   - Fixed up a major speed drop bug by just adding some empty space.
  2469.     Most likely a cache/alignment problem.
  2470.   - Used an older version of wdosx because the new version sometimes
  2471.     crashes during compiling
  2472.   - Executable is now uncompressed.  It's 3 megs, but it provides a
  2473.     much faster start up time.
  2474.   - Seems like EPACK can only support a maximum of 6 commandlines.
  2475.     Fixed after executable is decompressed
  2476.   - Fixed a bug where buttons 7 and 8 of 8 button joystick support
  2477.     sticks once pressed
  2478.   - Swapped button 5/6 and 7/8 in the default joystick configuration
  2479.     for 8 button joysticks
  2480.   - It seems like 16bit HDMA < 5 was causing problems with some sound cards.
  2481.     It now reroutes back to 8bit DMA like how v0.400 did it.
  2482.   - Implemented a new offset per tile mode engine into the old
  2483.     graphics engine (mostly transferred from 8bit newgfx engine)
  2484.   - Implemented Horizontal offset per tile mode in both 8bit and
  2485.     16 bit old graphics engine (Mode2/8x8 only)
  2486.   - Implemented Horizontal offset per tile mode in 8bit new graphics
  2487.     engine (Mode2/8x8 only)
  2488.   - Tweaked sidewinder routines.  Hopefully, this will help those who
  2489.     have troubles using sidewinder support
  2490.   - For those with sidewinder pads who has troubles with the tweaked routines,
  2491.     a 'Sidewinder Fix' option in the GUI is added in the Config/Options menu
  2492.   - Commandline -i now uninterleaves an incorrectly interleaved rom
  2493.   - Tweaked GamePad Pro routines.  Not exactly sure if this will help
  2494.     those with 2 GPP joysticks though
  2495.   - Fixed up sticky buttons in the GUI cheat menu when
  2496.     no cheat codes are present
  2497.   - Fixed a bug where using -1 and -2 in the commandlines didn't
  2498.     activate the joystick movement/buttons
  2499.   - Fixed an offset per tile mode wrapping bug
  2500.   - ZSNES will now not crash when zsnes.cfg and zguicfg.dat are
  2501.     write protected files
  2502.   - Fixed up the GUI when 239 y resolution is used in the game
  2503.   - Optimised some minor mode 7 routines
  2504.   - SNES Header display in the GUI now displays the filename for blank headers.
  2505.     This will fail for headers with garbled header names
  2506.   - Inserted an extra reminder in the cheat menu
  2507.   - Implemented 239 y-resolution support for .PCX snapshots
  2508.   - Implemented 239 y-resolution support for .BMP snapshots
  2509.   - Added multiple .SPC saves (Up to 10 saves only)
  2510.   - Save State Selection Menu (default F3) now highlights used
  2511.     state boxes in red
  2512.   - Tweaked 2player/6button/8button joystick routines a bit
  2513.   - Fixed a cheat code bug where pressing TAB adds an extra character
  2514.     at the end of the address
  2515.   - Removed the blank line from the .PCX and .BMP snapshots
  2516.   - Implemented Joystick Calibration for non digital joysticks
  2517.   - Fixed a bug where parallel port LPT2 player 2 wasn't selectable in v0.605
  2518.   - Stabilized the joystick code a bit
  2519.   - Fixed up a cheat code bug where using a PAR code that accesses
  2520.     RAM doesn't freeze when the .cht file is loaded
  2521.   - Added a small delay to play a note when a key on is issued from
  2522.     the sound DSP.  Not sure if this fixes anything though
  2523.   - Fixed some sound compatibility problems when RESET is used
  2524.   - Implemented Movie Record/Playback support.  Read GUINotes.txt for details.
  2525.   - Added a small detection for long filenames and prevented users from
  2526.     selecting it when it isn't detected
  2527.   - Fixed a bug where max frame skip didn't save
  2528.   - Fix a timing bug where running a game off the gui ran 1 less
  2529.     line in the 65816 than running off the commandline
  2530.   - Implemented FPS at start option in the Config/Options menu
  2531.   - Fixed a bug in the newgfx16bit engine where 8bpp tiles displayed incorrectly
  2532.   - Reduced the filesize by 1200k through many changes in the code
  2533.     (filesize is now 2.0 megs)
  2534.   - Fixed some VIRQ bugs that caused certain games to crash
  2535.   - Added DMA area execution for IRET
  2536.   - Added a 'Bugs Section' in the readme.txt
  2537.   - Show all extensions is now disabled when snes header view is
  2538.     selected in the GUI
  2539.   - Implemented partial Direct Color mode in Mode 7 (no transparencies
  2540.     yet, only works in 16bit old gfx engine)
  2541.   - Improved header detection a bit
  2542.   - Fixed up a sprite bug in games which changes the address in
  2543.     the middle of the screen
  2544.  
  2545.  
  2546. ............................................................
  2547. v0.605 - September 10, 1998
  2548. ............................................................
  2549.  
  2550.   - Fixed up a FPS display bug when switching between auto frame rate
  2551.     and manual frame rate in the GUI
  2552.   - Cheat Codes can now be toggled ON/OFF by double clicking on them
  2553.   - Tab key now switches from the Cheat Code enter box to the Description box
  2554.   - Fixed a Save State/Load State bug in the menu where it saved
  2555.     in the load directory instead of the save directory
  2556.   - Implemented 8button joystick support (Not tested)
  2557.   - Implemented an option in the .cfg file to enable reversed
  2558.     stereo sound (ReverseStereo)
  2559.   - Implemented an option in the .cfg file to share Player 1 and Player 2
  2560.     controls with Player 3 and Player 4's controls.  This option allows you to
  2561.     use 2 devices (Joystick and Keyboard) for both player 1 and player 2, but
  2562.     this also disables MultiTap support. (Pl34to12Share)
  2563.   - Added Reverse Stereo to the GUI under config/sound
  2564.   - Added Player 3, Player 4 to use as Player 1, Player 2 in the
  2565.     GUI under config/options
  2566.   - Compiled under a new version of wdosx.  Hope this doesn't cause any problems
  2567.  
  2568.  
  2569. ............................................................
  2570. v0.601 - September 9, 1998
  2571. ............................................................
  2572.  
  2573.   - Fixed up a sound card deinit bug that sometimes caused ZSNES to
  2574.     crash in certain sound cards
  2575.   - Disabled Autoinit mode when a low sampling rate is used in 8bit
  2576.     sound.  Probabily was also causing problems in some cards
  2577.  
  2578.   Note : The offset per tile mode in the 16bit oldgfx engine seems to randomly
  2579.     crash sometimes for an unknown reason.  If 16bit mode crashes for you and
  2580.     8bit doesn't, press the '0' key in 16bit mode to disable that mode.
  2581.  
  2582.  
  2583. ............................................................
  2584. v0.600 - September 9, 1998
  2585. ............................................................
  2586.  
  2587.   *** ADDED A NEW MEMBER TO THE ZSNES TEAM! ***
  2588.   Welcome Pharos to the team, his role is currently a coding assitant.
  2589.   So far, he helped us objectize the zsnes source code which greatly
  2590.   helped in the compile time, provided assembly help, and helped us
  2591.   prepare on linking C code to zsnes (not completely there yet).
  2592.  
  2593.   Note : It is strongly recommended to not use the 16-bit new
  2594.          graphics engine yet because of bugs and speed concerns.  It
  2595.          is enabled only in 320x240x65536 for those who are interested.
  2596.  
  2597.   - Added partial 65816 execution in the DMA registers (doesn't seem to
  2598.     fix mucht due to some other problem) Thanks to Alucard for this info!
  2599.     This also slowed down emulation a bit.
  2600.   - Implemented sprite priority correction into the new graphics engine
  2601.   - Implemented mosaic into the new graphics engine
  2602.   - Implemented true 512 horizontal resolution into new graphics engine
  2603.     (both 16x8 and 16x16 tile modes)
  2604.   - Implemented interlaced 448 vertical resolution into new graphics engine
  2605.   - Implemented offset per tile mode into the new graphics engine
  2606.     (Mode 2/Vertical only).  More accurate compared to the old graphics engine.
  2607.     (seems to be a bug where the game gets very slow sometimes though)
  2608.   - Started 16-bit new graphics engine
  2609.   - Implemented sprite priority correction in 16bit new gfx engine
  2610.   - Implemented palette raster effects in 16bit new gfx engine
  2611.   - Fixed a minor bg enable/disable bug in the new gfx engine
  2612.   - Multiple SPC700 bug fixes.  More games run now!
  2613.   - Implemented SPCPlay sound engine into zsnes :
  2614.       - Echo & FIR Filter Support (Slowed down emulation, but gives
  2615.         better sound)  Thanks to feenix65 for info on FIR Filter!
  2616.       - Volume fixes
  2617.       - Rewrote ADSR/GAIN engine
  2618.       - Added Adjustable Volume through the commandline and zsnes.cfg
  2619.       - 16000 and 32000 extra sampling rates
  2620.       - Many other bug fixes
  2621.   - Fixed a minor HDMA bug
  2622.   - Fixed an old style joystick read bug that prevented the joypad
  2623.     from functioning in certain games
  2624.   - Several optimisations on Echo & FIR Filter
  2625.   - Several Sound DSP Fixes
  2626.   - Temporarily fixed a V-latch bug in some games that don't update the
  2627.     display at every frame
  2628.   - Add/Removed some game hacks for compatibility
  2629.   - Modified Song Start Search in .spc capture.  Should be much better now.
  2630.   - Fixed a sprite window clipping bug where it was used when it's not
  2631.     supposed to be.
  2632.   - Modified memory allocation technique in zsnes.  This should now
  2633.     eliminate some random crash errors.  Thanks to Y0SHi for this info!
  2634.   - -c now does full screen instead of small screen in 640x480 modes.
  2635.     For small screen, use -cc
  2636.   - Fixed a back area 1/2 addition bug which caused the background
  2637.     to be sometimes darker than usual
  2638.   - Fixed a mode 7 transparency bug
  2639.   - Added 8-bit stereo sound and 8-bit sound high speed mode support
  2640.     (high speed mode support is just the implementation of 8bit 44100khz
  2641.      or 22050khz stereo)  Thanks to Crono for a lot of help on this!
  2642.   - Fixed up sound blaster deinit code
  2643.     Thanks again to Crono!
  2644.   - Wrote an entirely new GUI :
  2645.       - Mouse driven GUI/Menu Based
  2646.       - Full Keyboard Support in all the Quick (Arrow Menu), Load,
  2647.         and Cheat menu items
  2648.       - Ability to display load names under 8.3 filename format, snes
  2649.         header name, and win95 long filenames
  2650.       - Support for Save State, Load State, and Select State through menu items
  2651.       - Quick Load Menu (Arrow menu) which allows you to quickly load
  2652.         the last 10 games loaded
  2653.       - Ability to Freeze or Clear the Quick Load Menu
  2654.       - An Options menu which allows you to configure settings such
  2655.         as video mode, sound settings, frame skip, etc.
  2656.       - Added the ability to customize the game keys such as
  2657.         the save state key, misc toggles, etc.
  2658.       - Ability to use those keys as joystick buttons
  2659.       - Customizeable background palette displacement
  2660.       - Several minor GUI customization features
  2661.       - Ability to quickly exit/enter the GUI with the right
  2662.         mouse button (Disabled by default)
  2663.       - Ability to Enter Game Genie, Pro Action Replay, or Game
  2664.         Finger Cheat Codes
  2665.       - Ability to browse the cheat codes and Toggle or Remove the codes
  2666.       - Ability to Save/Load Cheat Codes (saves them as .CHT files
  2667.         in the same directory as the .SRM/.ZST files)
  2668.       - Ability to Select Input Devices for each joypad
  2669.       - Ability to Define Keys/Button configuration for each joypad
  2670.       - Joypad can now move in the GUI (disabled by default)
  2671.       - Added some future reserve menus (Netplay, Cheat Search Engine)
  2672.         But they are NOT implemented in zsnes yet.
  2673.   - Fixed a bug when clearing the screen in 640x480x65536
  2674.   - Implemented full add, half add, full subtract, and
  2675.     half subtract into the new 16bit graphics engine
  2676.     Not sure why, but some transparency modes are actually slower
  2677.     than the old engine.  Most likely flushing the cache a lot somewhere.
  2678.   - Implemented background transparencies into new 16bit graphics engine
  2679.     (implemented incorrectly at the moment.  Some transparency modes also is
  2680.     slower than the old graphics engine, but that will change in the future)
  2681.   - Implemented fixed color transparencies (very incorrect because of
  2682.     lack of windowing)
  2683.   - Fixed a minor bug in the fast forward routines
  2684.   - Rewrote most of the 65816 speed hack.  It should now be a lot more
  2685.     friendly with games (reduced graphic glitches/increased compatibility).
  2686.   - Fixed a bug in Mode7 with Windowing and Transparency enabled
  2687.   - Allowed 16bit HDMA sound blaster values less than 5 to be used.
  2688.     Not exactly sure if this works though.
  2689.   - Implemented Mouse Disable Command Line (-j)
  2690.   - Rewrote Input Device Routines (Keyboard, Joystick, SNES Mouse,
  2691.     and Super Scope Handlers)
  2692.   - Added GamePad Pro Support (Don't know if it works on a standard
  2693.     GrIP system though).  Thanks to Marius Fodor for the code!
  2694.   - Added Snes Parallel Port Support for both LPT1 and LPT2.
  2695.     Thanks to Karl for the code!
  2696.   - Added MultiTap (Multiplayer 5) Support!  (Only up to 4 players
  2697.     at the moment though)
  2698.   - Joystick Port 209h support
  2699.   - Fixed an overflow caching bug in the new gfx engine where a few games
  2700.     run very slow
  2701.   - Added some C -> ASM converted DSP1 functions.  Some functions
  2702.     were unable to convert properly so no DSP1 games are playable
  2703.     until the actual C code is in
  2704.   - Executable is now compressed using epack
  2705.   - Implemented sprite transparency into the 16-bit new graphics engine
  2706.   - Implemented mode7 transparency into the 16-bit new graphics engine
  2707.   - Higher memory requirements (Sorry, but this is unavoidable as long
  2708.     as ZSNES keeps expanding)
  2709.   - Implemented Echo Disable in the zsnes.cfg for those who want some
  2710.     extra speed in return for lost sound quality
  2711.   - A bunch of other fixes that we forgot to list
  2712.  
  2713.  
  2714. ............................................................
  2715. v0.400 - May 19, 1998
  2716. ............................................................
  2717.  
  2718.   - Fixed a dual windowing bug in mode 7 in 65536 color mode
  2719.   - Re-added FPU Copy due to a demand
  2720.   - Implemented MMX Copy.  Use -om to enable.  Thanks to Angels Holocaust
  2721.     for this info!
  2722.   - Fixed a bug when writing to .bmp files
  2723.   - Added (buggy) SuperFX support (9.5MB memory required)
  2724.     Special thanks to the snes9x team for all the info and help!
  2725.   - Fixed up sprite windowing.  Should hopefully be correct now
  2726.   - Added a commandline to show all file extensions through the GUI
  2727.     Use -sa to enable
  2728.   - Added Noise to the Sound DSP
  2729.   - Added a Fast Forward key.  Use the Tilde Key (~) located at the
  2730.     top-left of your keyboard.
  2731.   - Added Sprite Priority Correction
  2732.   - Fixed a tile caching bug that caused some tile corruption
  2733.   - Fixed a 65816 bug in XCE on the x flag.  Thanks to ]SiMKiN[ for this!
  2734.   - Implemented Interleaved format and a simple auto detection.
  2735.     In case autodetect fails, use -i.  Thanks to feenix65 for this info!
  2736.   - Improved header detection.  Should now work better with demos
  2737.     and games with weird filesizes
  2738.   - Added a new graphics engine in 256 color mode.  It should be much faster
  2739.     in areas that don't use mode 7, but lacks a lot of features such as
  2740.     windowing, mosaic, and sprite priorities so it is disabled by default.
  2741.     It can be enabled by pressing 8 during gameplay.  (~40-100% faster)
  2742.   - Optimised Mode 7 in 256 color mode
  2743.   - Implemented dual windowing to color window clipping
  2744.   - Fixed several color window clipping bugs
  2745.   - Added full resolution screenshot capture in 640x480x65536 mode
  2746.     To activate while in that mode, hold backspace and press F1
  2747.   - Fixed several transparency bugs
  2748.   - Added NewGfx to zsnes.cfg which determines if the new graphics engine
  2749.     is enabled at start
  2750.   - Added CopyMethod to zsnes.cfg which can default the copy method
  2751.     as either fpu copy or mmx copy
  2752.   - Allowed systems with 5.5MB of RAM free to load 2mbit roms
  2753.   - Fixed sidewinder support when sound is set at a high sampling rate.
  2754.     Thanks to Marius Fodor for the source!
  2755.  
  2756.  
  2757. ............................................................
  2758. v0.393 - April 15, 1998
  2759. ............................................................
  2760.  
  2761.   - Whoops!  Forgot to remove the debug variables in v0.391
  2762.   - Fixed another sprite clipping bug
  2763.   - Fixed clipping in Mode7 16-bit mode
  2764.   - Removed FPU Copy since it didn't seem to speed up emulation
  2765.   - Added .USA and .JAP rom extension into the GUI
  2766.   - Added Save SPC Data which saves the contents of the SPC700/DSP
  2767.     of the beginning of the next song (Future Reserved)
  2768.   - Add Sound Buffer Dump which dumps the decompressed sound buffer as raw pcm.
  2769.     This can become quite inaccurate due to the way how zsnes stores its
  2770.     decompressed sounds.
  2771.   - Added MenuItem Sound Buffer Dump into the F1 Menu
  2772.   - Added MenuItem Save SPC Data into the F1 Menu
  2773.   - Added a key to disable offset mode.  Press 0 key to activate/deactivate
  2774.   - Added small screen support in 640x480VESA2 modes.  This mode should be much
  2775.     faster for those who use 640x480.  Use the -c commandline to enable this
  2776.     when in 640x480.
  2777.   - Added an option for centered small screen.  Use the -cc commandline.
  2778.   - Fixed up 320x240x65536 support for ARGB cards again.
  2779.     It now should be working. (No, seriously!)
  2780.   - Removed some static from the sound.
  2781.  
  2782.  
  2783. ............................................................
  2784. v0.391 - April 13, 1998
  2785. ............................................................
  2786.  
  2787.   - Fixed a bug in DMA from v0.390
  2788.   - Fixed some sprite windowing clipping bugs
  2789.   - Fixed an OAM overflow bug.  Thanks to DJRob for some help on this!
  2790.   - Fixed a save state bug where running a game off the commandline and having
  2791.     a save directory specified prevented more than 1 save state
  2792.   - Fixed a transparency bug from v0.390
  2793.  
  2794.  
  2795. ............................................................
  2796. v0.390 - April 11, 1998
  2797. ............................................................
  2798.  
  2799.   - Fixed a bug which caused 320x240x65536 to display incorrectly
  2800.     on video cards with an 16-bit ARGB setting
  2801.   - Fixed a minor screen add/sub bug
  2802.   - Fixed a minor sprite priority bug
  2803.   - Fixed a BG3 priority bug in BG Mode 0
  2804.   - Fixed a color window addition bug
  2805.   - Fixed a minor VIRQ enable bug
  2806.   - Swapped The Cursor Button and Autofire Switch in Super Scope
  2807.   - Fixed a joystick read timing bug
  2808.   - Sound volume register returned an invalid value.  Now fixed.
  2809.   - Added some dword alignment to some variables.
  2810.     Thanks to Marius Fodor for this info!
  2811.   - Implemented 64k sram files
  2812.   - Implemented Sprite VRAM address changing in the middle of the screen.
  2813.     Should fix some games such as Lufia 2
  2814.   - Added some hacks to get some games working better
  2815.   - DSP : Fixed a divide by 0 bug when key on is set without any
  2816.     sound variables initialized
  2817.   - Increased default cycles executed in FastROM.
  2818.   - Added ZSNES.FAQ .  Read this if you have troubles!
  2819.   - Added a key to disable/enable Windowing.  Press 9 to activate this.
  2820.   - Implemented EAGLE algorithm in 640x480x256 video mode.
  2821.     Use -y to enable.  Thanks to A CoolMan for the algorithm!
  2822.     Later on, we'll implement his code which has MMX acceleration!
  2823.   - Implemented FPU copy.  Use -o to enable.  Used only when copying
  2824.     buffer to video in 320x240 vesa2 modes.
  2825.   - Re-wrote Windowing routines for speed and expandability
  2826.   - Added Dual Windowing on BGs in all logic modes
  2827.   - Added Dual Windowing on Sprites
  2828.   - Added some minor stuff to the header displayer
  2829.   - Added partial offset per tile mode. (Mode 2/Vertical/8x8)
  2830.     Thanks to the feenix65 for some help on this!
  2831.     Implementation still a bit buggy.
  2832.   - Sorry, but memory requirements had to increase by a bit.
  2833.   - Fixed a tile graphics wrapping bug
  2834.   - Clean up and optimised 16-bit graphics code
  2835.   - Fixed up a display bug when switching from 239 to 224 y resolution
  2836.   - Optimised some video processing code.  Thanks to Crash_Man for the help!
  2837.   - Minor optimisations to the 65816
  2838.   - Improved color intensity in the back area
  2839.   - Fixed a sram directory bug where the save state didn't save in the
  2840.     save directory when the game is specified from the command line
  2841.   - Fixed a keyboard bug when left-shift is selected as a key.
  2842.     Thanks to Pharos for help on this!
  2843.   - Some DMA speedups
  2844.   - Some optimisations to OAM/VRAM write
  2845.   - Sorry, but SuperFX emulation is disabled for this public version.
  2846.  
  2847.  
  2848. ............................................................
  2849. v0.305 - February 12, 1998
  2850. ............................................................
  2851.  
  2852.   - Fixed a snes ppu multiplication bug.  Thanks to Lord Esnes!
  2853.   - Hopefully fixed 6-button joystick support.
  2854.   - Fixed a little memory overflow bug which caused some games to not work
  2855.   - Forgot to clear NMI wait substitute variables when another game
  2856.     is loaded from the GUI
  2857.   - Changed sound processing engine back to v0.297.  If for any reason
  2858.     you want to go back to v0.300 sound engine, use -x as a command line
  2859.   - Added Cursor Mode Button to the Super Scope.  Never thought it was
  2860.     necessary until recently.  Use the =/+ key.
  2861.  
  2862.  
  2863. ............................................................
  2864. v0.300b - February 10, 1998
  2865. ............................................................
  2866.  
  2867.   - Fixed a bug that causes sidewinder support to crash.
  2868.  
  2869.  
  2870. ............................................................
  2871. v0.300 - February 9, 1998
  2872. ............................................................
  2873.  
  2874.   - Fixed a 65816 wrapping bug
  2875.   - Added Super Scope Emulation!  (Press 7 beyond mouse)
  2876.   - Some minor touches to the GUI
  2877.   - Manually calculated RGB bit lengths when using 16-bit modes
  2878.   - Fixed another bug when loading 48mbit images from the GUI
  2879.   - Sped up the execution loop when sound is enabled
  2880.   - Implemented NMI wait substitute for speed
  2881.   - Added some extra vesa2 routines to help some video cards with ARGB format
  2882.     of 1:5:5:5, however interpolation won't work for those at the moment.
  2883.     Thanks to Dark Force for helping out on this one!
  2884.   - Implemented 512x384 VESA2 resolution for both 8 and 16 bit
  2885.   - Implemented Sound Mute and Reset
  2886.   - Implemented Joystick Remapping.  Edit ZSNES.CFG to access this.
  2887.   - Fixed and sped up 6 button joystick support
  2888.   - Fixed 2 2-button joystick support
  2889.   - Hopefully fixed 2 sidewinder support
  2890.   - Fixed an overflow sound bug
  2891.  
  2892.  
  2893. ............................................................
  2894. v0.297 - January 31, 1998
  2895. ............................................................
  2896.  
  2897.   - Fixed a bug when loading 48mbit images from the GUI
  2898.   - Fixed some crashing bugs by just adding some zero space
  2899.       Very weird bug!
  2900.  
  2901.  
  2902. ............................................................
  2903. v0.296 - Not released?
  2904. ............................................................
  2905.  
  2906.   - Fixed up Cheat Menu in 16-bit color mode
  2907.   - Changed SPC700 skipper back since it was causing problems in certain games
  2908.   - Added Multiple Snapshot files
  2909.   - Fixed a minor loading bug
  2910.   - Fixed 16-bit color full add/sub conversion table when video is in BGR format
  2911.   - Fixed some fixed color screen add/sub bugs
  2912.   - Supported .SWC format in the GUI
  2913.  
  2914.  
  2915. ............................................................
  2916. v0.295 - January 29, 1998
  2917. ............................................................
  2918.  
  2919.   - Compiled under a newer version of WDOSX.  This should help fix some
  2920.     VESA 2 problems.
  2921.   - Fixed multiple SPC700 bugs
  2922.   - Added a command line to force either NTSC (-t) or PAL (-u) timing
  2923.   - Added a command line to force 8-bit sound on (-8)
  2924.   - Zsnes.cfg is now loaded from the directory where zsnes.exe is located
  2925.   - Zsnes.cfg now re-writes itself when zsnes exits
  2926.   - Reduced zsnes.exe filesize
  2927.   - The IRQ's are now more stable.  This should help fix some crashing/rebooting
  2928.     problems under dos.  Thanks to Sardu for some help on this!
  2929.   - Fixed some VRAM accessing bugs
  2930.   - Several fixes to the sound DSP
  2931.   - Optimised SPC700 a bit
  2932.   - Implemented primitive Mode 5, 512 horizontal resolution.  To get
  2933.     full potential of this mode, use 640x480 resolutions except for
  2934.     interpolated/nonscanline mode.
  2935.   - Improved 65816 <-> SPC700 communication
  2936.   - Slightly improved sound skipper
  2937.   - Fixed a directory changing bug
  2938.   - Implemented Scanlines for 640x480x256 video mode
  2939.   - Added a temporary command line to enable sound compression buffering (-Q)
  2940.   - Added a extra menu which pops out when you press F1
  2941.   - Added snapshot feature.  Press F1 and select Save Snapshot
  2942.     ZSNES saves 256 color under image.pcx and 65536 under image.bmp.
  2943.   - Added FPS feature.  At the moment, it only works when
  2944.     auto frame rate is used.
  2945.   - 65816 bugfix : x flag is supposed be used in MVN/MVP
  2946.   - Fixed up color addition/subtraction clipping a bit
  2947.   - Added Scanlines, Interpolation, Enterskip, and Force 8-bit sound
  2948.     in zsnes.cfg
  2949.   - GUI now saves the loading directory
  2950.   - Added a separate save directory feature in zsnes.cfg.
  2951.   - SPC700 bugfix : fixed mem.bit addressing mode.
  2952.     Thanks to Phoenix for this info!
  2953.   - Fix up a bug where more memory was cleared than needed in 256 color
  2954.     video memory processing
  2955.   - Optimised video memory clearing in 65536 color mode
  2956.   - Minor optimisations to the 65816/SPC700
  2957.   - Implemented Mode 7 Tile #0 Repetition
  2958.   - Rewrote most of the Mode 7 routines for speed
  2959.   - Fixed a 65536 color Mode 7 bug where the background wasn't cleared properly
  2960.   - Added Pro Action Replay, Gold Finger,and Game Genie cheat code support
  2961.   - Optimised Memory/Register accessing routines
  2962.   - Used a newer version of Sidewinder driver.  Should fix some problems
  2963.     and also support 2 sidewinder pads (not tested yet).  Thanks Robert!
  2964.     Also, thanks to Sardu for helping to get it to work right!
  2965.   - Whoops!  256 Color palette was set when GUI is exited in 16-bit mode.
  2966.     Hopefully fixed now.
  2967.   - Added the ability to Clear/Disable/Enable cheat codes through the menu.
  2968.   - Optimised Graphics Decompression Routines.
  2969.     Thanks to Nerlaska for this info!
  2970.   - A Bunch of other Minor Bugs Fixed.
  2971.  
  2972.  
  2973. ............................................................
  2974. v0.270 - December 25, 1997
  2975. ............................................................
  2976.  
  2977.   - Properly cleared memory when loaded off of the GUI
  2978.   - Implemented realtime adsr/gain switch.  Special thanks to Sardu for
  2979.     help on this!
  2980.   - Fixed up a VESA 2 error message
  2981.   - Temporarily disabled Sound Compress buffering till we can get the bugs out.
  2982.   - Volume fixes to the sound DSP
  2983.   - Fixed up > 16mbit LoROM support
  2984.   - Added partial 48mbit ROM support (no games seems to work yet
  2985.                                       + 9MB mem required)
  2986.   - Fixed a SRAM Memory Map Bug
  2987.   - Fixed a bug in old style joystick read
  2988.   - Disabled sram save using tilde key.  Instead, enter/exit the GUI since
  2989.     it also saves the sram.
  2990.   - Added panic key which turns back on all sound channels and backgrounds.
  2991.     Press 6 to activate this.
  2992.   - Added snes mouse support!  Use 7 to switch between keyboard and mouse.
  2993.     Thanks to Y0SHi for info on this!
  2994.   - Panic key now turns off mouse when mouse is enabled
  2995.   - Fixed a minor IRQ bug
  2996.   - Fixed a HDMA bug.  Thanks to Lord Esnes for help on this!
  2997.   - Fixed a timing bug.  Thanks to TaNdRuM for help on this!
  2998.   - Fixed up some Fixed color add/sub bugs
  2999.   - Implemented OBJ Name Base Select.  Thanks to Y0SHi for info!
  3000.   - Windowing was off by 1 pixel.  Now fixed.
  3001.   - Fixed Screen Add/Sub on back area
  3002.   - Added support for 4 and 6 button joysticks
  3003.   - Added support for sidewinder joypads
  3004.   - Fixed a VESA 2.0 bug.  It should be more compatible now.
  3005.   - Implemented Interpolation for 640x480x65536 mode.  Use -Y to enable.
  3006.   - Modified sound mixing code a bit
  3007.   - Added GUI disable in zsnes.cfg.  Add this if you want to disable the GUI
  3008.       GUIDisable = 1
  3009.   - Implemented Directory Changing in the GUI
  3010.   - Fixed a bug where it crashed when loading some ROMs
  3011.   - Fixed an ADSR sustain bug.  Thanks to Trepalium for help on this!
  3012.  
  3013.  
  3014. ............................................................
  3015. v0.201b - November 5, 1997
  3016. ............................................................
  3017.  
  3018.   - Fixed up Save State Selection bug
  3019.  
  3020.  
  3021. ............................................................
  3022. v0.201 - November 5, 1997
  3023. ............................................................
  3024.  
  3025.   - Fixed up PAL/NTSC detection when GUI is used
  3026.   - GUI now doesn't enter load when no files are found.
  3027.     Thanks to ScanT for reporting this!
  3028.   - Sped up execution loop a bit
  3029.   - Fixed up a major save state conversion bug.  Old save states
  3030.     should work better now.
  3031.  
  3032.  
  3033. ............................................................
  3034. v0.200 - November 4, 1997
  3035. ............................................................
  3036.  
  3037.   - Reg$2137 was calculating the horizontal position incorrectly
  3038.   - Fixed up a looping bug in sound DSP.  Thanks to EFX for some help on this!
  3039.   - Added Key to dump SRAM to Harddisk (tilde key, ~) during game
  3040.   - Fixed up gain sound effects
  3041.   - Fixed a couple of SPC timer bugs
  3042.   - Added Stereo Sound!  (Use -Z)
  3043.   - Added some precision to the DSP (this seemed to have slowed emulation down)
  3044.   - Changed Real Time State Save Format.  However, ZSNES will automatically
  3045.     convert from an older format.  Some problems may come up because of the
  3046.     many changes in the dsp.
  3047.   - Fixed up a sprite ordering bug.  Thanks to Y0SHi!
  3048.   - Added Scanlines (Use -N)  Only available for 256x256/640x480x65536
  3049.   - Adjusted SPC timers
  3050.   - Fixed up BG Mode 0 display
  3051.   - Fixed up a bug that crashes when hirom sram is accessed
  3052.   - Fixed up a VIRQ bug
  3053.   - Added a simple, yet effective dsp timer wait substitute.  Seems to make many
  3054.     games run much faster with sound!
  3055.   - Fixed VRAM increment bug.  Special thanks to Trepalium for this info!
  3056.   - Fixed up multiple SPC bugs
  3057.   - Player 2 was still reading the joystick even though keyboard was selected.
  3058.     This is now fixed.
  3059.   - Added VSync (-w).  Thanks to Marius Fodor for the code!
  3060.     Please use -f 0 when using this.
  3061.   - Added a very simple GUI.  Currently, it only loads, reset, and quit.
  3062.     Also, load cannot change the current directory.
  3063.   - Added -m to disable the GUI
  3064.   - Added Stereo to zsnes.cfg.  Add this if you want to enable stereo :
  3065.       Stereo = 1
  3066.  
  3067.  
  3068. ............................................................
  3069. v0.182 - October 23, 1997
  3070. ............................................................
  3071.  
  3072.   - Small fix to a priority in bg4 drawing
  3073.   - Added TCALL and PCALL
  3074.      Special Thanks to Gary of Snes9X!
  3075.   - Enabled the debugger (use the -d command line)
  3076.  
  3077.  
  3078. ............................................................
  3079. v0.180 - October 22, 1997
  3080. ............................................................
  3081.  
  3082.   - Move the whats new stuff to readme.txt
  3083.   - Forgot to remove the end of string marker so the new vesa modes didn't show
  3084.     in the previous version help
  3085.   - Fixed minor SNES PPU DMA bug
  3086.   - lowered volume again
  3087.   - Fixed a vesa 2 bug issue.  Nothing major
  3088.   - Removed PCALL/TCALL.  If anyone knows the implementation of these
  3089.     instructions, please tell us.  Also, we will not accept any requests to put
  3090.     these back on unless the info the found.  Thanks.
  3091.   - Modified SPC700 cycle timing.
  3092.   - Added code that properly deinits sound blaster auto-init mode
  3093.   - Moved sound blaster interrupt code a bit
  3094.   - Added Gamma Correction (use -g # in the command line)
  3095.   - Added what the default keys are in the readme.txt (We should have done this
  3096.     in the first release.  Oh well =) )
  3097.   - Added a new command line that can modify the % of clock cycles executed.
  3098.     ZSNES currently is modified so that 100% runs as many games as possible so
  3099.     it is strongly recommended that you do not set this.  But to modify this,
  3100.     use -p # in the command line.
  3101.   - Hopefully fixed up sprite BG layering priorities and background priorities
  3102.     to the correct way.  Thanks to Y0SHi for this info!
  3103.   - Fixed up key ordering in zsnes.cfg.  Thanks to Michael and Aquis for
  3104.     reporting this!  If zsnes.cfg already exists, change the button order to :
  3105.     B, Y, A, X, L, R
  3106.   - Fixed up set blaster detection.
  3107.   - SPC700 : Fixed up a minor flag setting bug in pop psw
  3108.  
  3109.  
  3110. ............................................................
  3111. v0.170 - October 16, 1997
  3112. ............................................................
  3113.  
  3114.   - Fixed crashing bug when 8000Hz sound is selected (divide by 0 problem)
  3115.   - Forgot to add code to support Sound Blaster irqs greater than 7
  3116.   - Changed 65816 timing a bit. (should help compatibility a bit)
  3117.   - Fixed a bug in 65816 stack routines.
  3118.     Special Thanks to Alucard for reporting this!
  3119.   - Somewhat modified sound decompression routines
  3120.   - Somewhat sped up Mode 7
  3121.   - Fixed a minor screen add/sub bug in non-repeating mode 7
  3122.   - Added increment by 8 vram access registers
  3123.   - Video Modes should now clear the screen when init
  3124.   - ZSNES now automatically creates a default .cfg file when one is missing
  3125.   - Forgot to implement save/load state messages in 16-bit.  It's there now.
  3126.   - Added a new command line : -b.  This disables sound compression buffering.
  3127.     There is a noticeable slowdown, but this should reduce static.
  3128.   - Added sound compression buffering disable in the .cfg file
  3129.     If you have an old .cfg file already, manually add this string at
  3130.     the end if you want to disable sound buffering :  SoundBufDisable = 1
  3131.   - Added 640x480 modes for both 8 and 16 bit.  VESA2 is still required and
  3132.     these modes are much slower too.  This seems to still not work on various
  3133.     video cards.  There's probabily a bug in VESA2 detection.
  3134.   - Fixed a sprite layering bug.
  3135.   - Reduced sound volume to prevent overflows.  This seems to make the sound
  3136.     better, but the pitch calculations are still incorrect due to SPC bugs.
  3137.   - Fixed a screen sub bug.  Thanks to Barubary!
  3138.  
  3139.  
  3140. ............................................................
  3141. v0.150 - Initial Release - October 14, 1997
  3142. ............................................................
  3143.  
  3144.   The following are implemented :
  3145.   - complete 65816 instruction set (bugs still left)
  3146.   - SRAM support
  3147.   - LoROM and HiROM support
  3148.   - SlowROM and FastROM support
  3149.   - Line by line graphics engine
  3150.   - Graphic Modes 0,1,2,3,4,5,6,7
  3151.   - 8x8, 16x16, 32x32 and 64x64 sprite support (flipped in all directions)
  3152.   - Mosaic effects
  3153.   - 8x8 and 16x16 tiles
  3154.   - 32x32,64x32,32x64,64x64 tile modes
  3155.   - Full DMA support
  3156.   - Full HDMA effects for wavy backgrounds, interesting mode 7 effects, etc.
  3157.   - Mode 7 rotating and scaling effects
  3158.   - Single Windowing Routines
  3159.   - BG priorities (still needs some work)
  3160.   - Sprite Priorities (still needs some work)
  3161.   - Add/sub of back area
  3162.   - HIRQ/VIRQ/NMI Interrupts
  3163.   - Support for most snes file formats
  3164.   - Multi file format support (.1,.2,.3,A.,B.,C.)
  3165.   - 16-bit graphics support
  3166.   - PAL timing support
  3167.  
  3168.   The following are present in sound :
  3169.  
  3170.   - 16bit digital sound
  3171.   - SPC700 Sound CPU (bugs still left)
  3172.   - DSP Sound Processor
  3173.        - ADSR volume effects
  3174.        - GAIN volume effects
  3175.  
  3176.   Following are present in 16-bit graphics mode :
  3177.  
  3178.   - Palette changing in the middle of a screen
  3179.   - Screen Addition (full and half)
  3180.   - Screen Subtraction (full)
  3181.   - Fixed Color Addition/Subtraction
  3182.   - Window clipping for Fixed Color (still needs work)
  3183.  
  3184.   The following are the features present in ZSNES :
  3185.  
  3186.   - Game State Save (F2=Save, F3=Select, F4=Load).
  3187.       Warning : A state file takes 200 kbytes of HD space!
  3188.   - Auto frame rate to give you constant Super Nintendo speed up to 12
  3189.       frame skips
  3190.   - configuration file support (zsnes.cfg)
  3191.   - 2 player support w/ Joystick and Gamepad support
  3192.  
  3193.   The following features are missing :
  3194.  
  3195.   - DSP features such as noise, echo, and pitch modulation
  3196.   - Mode 7 horizontal flip and color repetition
  3197.   - Screen Subtraction (half)
  3198.   - Interleaved ROM formats
  3199.   - A few VRAM accessing modes
  3200.   - Dual Windowing support (not sure if it's worth implementing this)
  3201.  
  3202.   The following will probabily never be implemented (but who knows...) :
  3203.  
  3204.   - 512 snes horizontal resolution
  3205.   - 448/480 snes vertical Interlaced resolution
  3206.   - Raster Effects (Scrolling location change in the middle of a
  3207.        horizontal line.  There might be a way to get through some of this)
  3208.   - EXTBG mode for mode 7 (I don't know any games that uses this)
  3209.  
  3210.   What will not run :
  3211.   -------------------
  3212.   - Super FX games such as Star Fox, Yoshi's Island, etc.
  3213.   - DSP games such as Mario Kart, Pilotwings, etc.
  3214.   - Games with other special chips such as Megaman X2 and X3
  3215.   - Games that have a unique sound checking routine (if sound is disabled)
  3216.   - Games which doesn't have a valid header (use -L or -H to get it working)
  3217.   - Games that hit a severe bug in the 65816/PPU/SPC700/DSP routines
  3218.   - Games that require special timing
  3219.  
  3220.  
  3221. . . . . . . . . . . . . . . . .
  3222. This documentation is best viewed in a fixed-width font such as "Courier New".
  3223.  
  3224. Copyright (C) ZSNES Team & ZSNES Documentation Team [License.txt]
  3225.